@@ -83,7 +83,7 @@ const char EXTERNAL_DBS_PWD_INSERT[] =
8383
8484const char EXTERNAL_DBS_ROLLUP_CREATE [] =
8585 "DROP TABLE IF EXISTS " EXTERNAL_DBS_ROLLUP ";"
86- "CREATE TABLE " EXTERNAL_DBS_ROLLUP "(type TEXT, pinode TEXT, filename TEXT, mode INT64, uid INT64, gid INT64, PRIMARY KEY(type, filename));" ;
86+ "CREATE TABLE " EXTERNAL_DBS_ROLLUP "(type TEXT, pinode TEXT, filename TEXT, mode INT64, uid INT64, gid INT64, PRIMARY KEY(type, pinode, filename));" ;
8787
8888const char EXTERNAL_DBS_ROLLUP_INSERT [] =
8989 "INSERT INTO " EXTERNAL_DBS_ROLLUP " VALUES (@type, pinode, @filename, @mode, @uid, @gid);" ;
@@ -152,11 +152,11 @@ static size_t external_create_query(char *sql, const size_t sql_size,
152152
153153int external_insert (sqlite3 * db , const char * type , const long long int pinode , const char * filename ) {
154154 char sql [MAXSQL ];
155- SNPRINTF ( sql , sizeof (sql ),
156- "INSERT INTO " EXTERNAL_DBS_PWD " (type, pinode, filename) "
157- "VALUES "
158- "('%s' , '%lld', '%s' );" ,
159- type , pinode , filename );
155+ sqlite3_snprintf ( sizeof (sql ), sql ,
156+ "INSERT INTO " EXTERNAL_DBS_PWD " (type, pinode, filename) "
157+ "VALUES "
158+ "(%Q , '%lld', %Q );" ,
159+ type , pinode , filename );
160160
161161 char * err = NULL ;
162162 if (sqlite3_exec (db , sql , NULL , NULL , & err ) != SQLITE_OK ) {
@@ -286,10 +286,10 @@ int external_concatenate(sqlite3 *db,
286286 /* find external databases of given type */
287287 char get_mappings [MAXSQL ];
288288 const size_t get_mappings_len = external_create_query (get_mappings , sizeof (get_mappings ),
289- "filename" , 8 ,
290- EXTERNAL_DBS , EXTERNAL_DBS_LEN ,
291- type ,
292- extra );
289+ "filename" , 8 ,
290+ EXTERNAL_DBS , EXTERNAL_DBS_LEN ,
291+ type ,
292+ extra );
293293
294294 /* step through each external file recorded in the main database */
295295 sqlite3_stmt * res = NULL ;
0 commit comments