Fossil SCM

Added a missing db_finalize() call in /json/branch/list which led to a downstream segfault via an invalid/destructed Stmt handle.

stephan 2018-09-18 17:50 trunk
Commit e45789ee8319f9d30dac4a10d4fee5dbaee9bcb0c0ee6e5b0c107dbd2c126416
1 file changed +2 -1
--- src/json_branch.c
+++ src/json_branch.c
@@ -68,11 +68,11 @@
6868
cson_value * listV;
6969
cson_array * list;
7070
char const * range = NULL;
7171
int branchListFlags = BRL_OPEN_ONLY;
7272
char * sawConversionError = NULL;
73
- Stmt q;
73
+ Stmt q = empty_Stmt;
7474
if( !g.perm.Read ){
7575
json_set_err(FSL_JSON_E_DENIED,
7676
"Requires 'o' permissions.");
7777
return NULL;
7878
}
@@ -143,10 +143,11 @@
143143
}
144144
if( sawConversionError ){
145145
json_warn(FSL_JSON_W_COL_TO_JSON_FAILED,"%s",sawConversionError);
146146
free(sawConversionError);
147147
}
148
+ db_finalize(&q);
148149
return payV;
149150
}
150151
151152
/*
152153
** Parameters for the create-branch operation.
153154
--- src/json_branch.c
+++ src/json_branch.c
@@ -68,11 +68,11 @@
68 cson_value * listV;
69 cson_array * list;
70 char const * range = NULL;
71 int branchListFlags = BRL_OPEN_ONLY;
72 char * sawConversionError = NULL;
73 Stmt q;
74 if( !g.perm.Read ){
75 json_set_err(FSL_JSON_E_DENIED,
76 "Requires 'o' permissions.");
77 return NULL;
78 }
@@ -143,10 +143,11 @@
143 }
144 if( sawConversionError ){
145 json_warn(FSL_JSON_W_COL_TO_JSON_FAILED,"%s",sawConversionError);
146 free(sawConversionError);
147 }
 
148 return payV;
149 }
150
151 /*
152 ** Parameters for the create-branch operation.
153
--- src/json_branch.c
+++ src/json_branch.c
@@ -68,11 +68,11 @@
68 cson_value * listV;
69 cson_array * list;
70 char const * range = NULL;
71 int branchListFlags = BRL_OPEN_ONLY;
72 char * sawConversionError = NULL;
73 Stmt q = empty_Stmt;
74 if( !g.perm.Read ){
75 json_set_err(FSL_JSON_E_DENIED,
76 "Requires 'o' permissions.");
77 return NULL;
78 }
@@ -143,10 +143,11 @@
143 }
144 if( sawConversionError ){
145 json_warn(FSL_JSON_W_COL_TO_JSON_FAILED,"%s",sawConversionError);
146 free(sawConversionError);
147 }
148 db_finalize(&q);
149 return payV;
150 }
151
152 /*
153 ** Parameters for the create-branch operation.
154

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button