diff options
author | ai4rei <ai4rei@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2010-12-22 12:11:15 +0000 |
---|---|---|
committer | ai4rei <ai4rei@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2010-12-22 12:11:15 +0000 |
commit | 8e24391458a6584315c33a3a8423358d9f65785f (patch) | |
tree | f8aac89ca03cd1edb9d4c21db9b76cac3b70d9d9 | |
parent | 537296dd156e22592606eedf539395288855639b (diff) | |
download | hercules-8e24391458a6584315c33a3a8423358d9f65785f.tar.gz hercules-8e24391458a6584315c33a3a8423358d9f65785f.tar.bz2 hercules-8e24391458a6584315c33a3a8423358d9f65785f.tar.xz hercules-8e24391458a6584315c33a3a8423358d9f65785f.zip |
* Fixed sql mapreg loading code specifying output buffer size for SqlStmt_BindColumn without zero-terminator, leading to truncations of variable names and/or their values when using the maximum length (bugreport:1939, since r11245).
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@14614 54d463be-8e91-2dee-dedb-b68131a5f0ec
-rw-r--r-- | Changelog-Trunk.txt | 2 | ||||
-rw-r--r-- | src/map/mapreg_sql.c | 4 |
2 files changed, 4 insertions, 2 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt index de7680996..19b4978f9 100644 --- a/Changelog-Trunk.txt +++ b/Changelog-Trunk.txt @@ -1,5 +1,7 @@ Date Added +2010/12/22 + * Fixed sql mapreg loading code specifying output buffer size for SqlStmt_BindColumn without zero-terminator, leading to truncations of variable names and/or their values when using the maximum length (bugreport:1939, since r11245). [Ai4rei] 2010/12/21 * Added script_setarray_pc for setting temporary character array variables outside of script.c without requiring them to use script-interal code (add_str and reference_uid). [Ai4rei] - Applied script_setarray_pc to assignment of dynamic shop arrays (related r5841). diff --git a/src/map/mapreg_sql.c b/src/map/mapreg_sql.c index 287aae4f9..f80be56a2 100644 --- a/src/map/mapreg_sql.c +++ b/src/map/mapreg_sql.c @@ -122,9 +122,9 @@ static void script_load_mapreg(void) return; } - SqlStmt_BindColumn(stmt, 0, SQLDT_STRING, &varname[0], 32, &length, NULL); + SqlStmt_BindColumn(stmt, 0, SQLDT_STRING, &varname[0], sizeof(varname), &length, NULL); SqlStmt_BindColumn(stmt, 1, SQLDT_INT, &index, 0, NULL, NULL); - SqlStmt_BindColumn(stmt, 2, SQLDT_STRING, &value[0], 255, NULL, NULL); + SqlStmt_BindColumn(stmt, 2, SQLDT_STRING, &value[0], sizeof(value), NULL, NULL); while ( SQL_SUCCESS == SqlStmt_NextRow(stmt) ) { |