Fossil SCM

fixed a missing db_finalize() in an error-handling case.

stephan 2011-10-07 14:19 json-multitag-test
Commit 7906bab836801ed1f55f98769ed03e292346c254
1 file changed +3 -3
+3 -3
--- src/json_wiki.c
+++ src/json_wiki.c
@@ -72,10 +72,11 @@
7272
" AND b.rid=x.rid"
7373
" ORDER BY x.mtime DESC LIMIT 1",
7474
zPageName
7575
);
7676
if( (SQLITE_ROW != db_step(&q)) ){
77
+ db_finalize(&q);
7778
return NULL;
7879
}
7980
rid = db_column_int(&q,0);
8081
zUuid = db_column_malloc(&q,1);
8182
db_finalize(&q);
@@ -83,12 +84,11 @@
8384
zBody = pWiki->zWiki;
8485
}
8586
8687
{
8788
unsigned int len;
88
- cson_value * payV = cson_value_new_object();
89
- cson_object * pay = cson_value_get_object(payV);
89
+ cson_object * pay = cson_new_object();
9090
cson_object_set(pay,"name",json_new_string(zPageName));
9191
cson_object_set(pay,"uuid",json_new_string(zUuid));
9292
free(zUuid);
9393
zUuid = NULL;
9494
/*cson_object_set(pay,"rid",json_new_int((cson_int_t)rid));*/
@@ -113,11 +113,11 @@
113113
cson_object_set(pay,"content",cson_value_new_string(zBody,len));
114114
}
115115
/*TODO: add 'T' (tag) fields*/
116116
/*TODO: add the 'A' card (file attachment) entries?*/
117117
manifest_destroy(pWiki);
118
- return payV;
118
+ return cson_object_value(pay);
119119
}
120120
}
121121
122122
123123
/*
124124
--- src/json_wiki.c
+++ src/json_wiki.c
@@ -72,10 +72,11 @@
72 " AND b.rid=x.rid"
73 " ORDER BY x.mtime DESC LIMIT 1",
74 zPageName
75 );
76 if( (SQLITE_ROW != db_step(&q)) ){
 
77 return NULL;
78 }
79 rid = db_column_int(&q,0);
80 zUuid = db_column_malloc(&q,1);
81 db_finalize(&q);
@@ -83,12 +84,11 @@
83 zBody = pWiki->zWiki;
84 }
85
86 {
87 unsigned int len;
88 cson_value * payV = cson_value_new_object();
89 cson_object * pay = cson_value_get_object(payV);
90 cson_object_set(pay,"name",json_new_string(zPageName));
91 cson_object_set(pay,"uuid",json_new_string(zUuid));
92 free(zUuid);
93 zUuid = NULL;
94 /*cson_object_set(pay,"rid",json_new_int((cson_int_t)rid));*/
@@ -113,11 +113,11 @@
113 cson_object_set(pay,"content",cson_value_new_string(zBody,len));
114 }
115 /*TODO: add 'T' (tag) fields*/
116 /*TODO: add the 'A' card (file attachment) entries?*/
117 manifest_destroy(pWiki);
118 return payV;
119 }
120 }
121
122
123 /*
124
--- src/json_wiki.c
+++ src/json_wiki.c
@@ -72,10 +72,11 @@
72 " AND b.rid=x.rid"
73 " ORDER BY x.mtime DESC LIMIT 1",
74 zPageName
75 );
76 if( (SQLITE_ROW != db_step(&q)) ){
77 db_finalize(&q);
78 return NULL;
79 }
80 rid = db_column_int(&q,0);
81 zUuid = db_column_malloc(&q,1);
82 db_finalize(&q);
@@ -83,12 +84,11 @@
84 zBody = pWiki->zWiki;
85 }
86
87 {
88 unsigned int len;
89 cson_object * pay = cson_new_object();
 
90 cson_object_set(pay,"name",json_new_string(zPageName));
91 cson_object_set(pay,"uuid",json_new_string(zUuid));
92 free(zUuid);
93 zUuid = NULL;
94 /*cson_object_set(pay,"rid",json_new_int((cson_int_t)rid));*/
@@ -113,11 +113,11 @@
113 cson_object_set(pay,"content",cson_value_new_string(zBody,len));
114 }
115 /*TODO: add 'T' (tag) fields*/
116 /*TODO: add the 'A' card (file attachment) entries?*/
117 manifest_destroy(pWiki);
118 return cson_object_value(pay);
119 }
120 }
121
122
123 /*
124

Keyboard Shortcuts

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