Build Version : T2.0.0.9945 Firebird 2.0 UNSTABLE
(writeBuildNum.sh,v 1.9949 2004/12/22 18:34:49 skidder Exp )
Update of /cvsroot/firebird/firebird2/src/jrd
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv31882/src/jrd
Modified Files:
par.cpp
Log Message:
Add check for overly long identifiers when pasing BLR. This helps with savepoints problem reported by Vlad and other similar issues as well
Index: par.cpp
===================================================================
RCS file: /cvsroot/firebird/firebird2/src/jrd/par.cpp,v
retrieving revision 1.111
retrieving revision 1.112
diff -b -U3 -r1.111 -r1.112
--- par.cpp 16 Dec 2004 03:02:53 -0000 1.111
+++ par.cpp 22 Dec 2004 18:34:45 -0000 1.112
@@ -1545,6 +1545,13 @@
} while (--l);
}
+ // Check for overly long identifiers at BLR parse stage to prevent unwanted
+ // surprises in deeper layers of the engine.
+ if (string.length() > MAX_SQL_IDENTIFIER_LEN) {
+ string.resize(MAX_SQL_IDENTIFIER_LEN);
+ ERR_post(isc_identifier_too_long, isc_arg_string, ERR_cstring(string), 0);
+ }
+
return string.length();
}
|