Merge pull request #395 from v-kaywon/fix_uninit_read

fix uninitialized read if pos of string parser is -1
This commit is contained in:
v-kaywon 2017-05-12 16:39:26 -07:00 committed by GitHub
commit 4537021d1b

View file

@ -415,9 +415,12 @@ void conn_string_parser:: parse_conn_string( TSRMLS_D )
// Primary function which parses out the named placeholders from a sql string.
void sql_string_parser::parse_sql_string( TSRMLS_D ) {
try {
int start_pos = -1;
while ( !this->is_eos() ) {
int start_pos = -1;
// if pos is -1, then reading from a string is an initialized read
if ( pos == -1 ) {
next();
}
// skip until a '"', '\'', ':' or '?'
char sym;
while ( this->orig_str[pos] != '"' && this->orig_str[pos] != '\'' && this->orig_str[pos] != ':' && this->orig_str[pos] != '?' && !this->is_eos() ) {