Fossil SCM
Fix two harmless memory leaks.
Commit
7949d941c631896e48de8723e45dcfff75c8bf079713991629e8a68f06bd8870
Parent
fcb20df757ad8f2…
2 files changed
+1
+2
-2
+1
| --- src/blob.c | ||
| +++ src/blob.c | ||
| @@ -1357,10 +1357,11 @@ | ||
| 1357 | 1357 | } |
| 1358 | 1358 | /* Make sure the blob contains two terminating 0-bytes */ |
| 1359 | 1359 | blob_append(pBlob, "\000\000", 3); |
| 1360 | 1360 | zUtf8 = blob_str(pBlob) + bomSize; |
| 1361 | 1361 | zUtf8 = fossil_unicode_to_utf8(zUtf8); |
| 1362 | + blob_reset(pBlob); | |
| 1362 | 1363 | blob_set_dynamic(pBlob, zUtf8); |
| 1363 | 1364 | }else if( useMbcs && invalid_utf8(pBlob) ){ |
| 1364 | 1365 | #if defined(_WIN32) || defined(__CYGWIN__) |
| 1365 | 1366 | zUtf8 = fossil_mbcs_to_utf8(blob_str(pBlob)); |
| 1366 | 1367 | blob_reset(pBlob); |
| 1367 | 1368 |
| --- src/blob.c | |
| +++ src/blob.c | |
| @@ -1357,10 +1357,11 @@ | |
| 1357 | } |
| 1358 | /* Make sure the blob contains two terminating 0-bytes */ |
| 1359 | blob_append(pBlob, "\000\000", 3); |
| 1360 | zUtf8 = blob_str(pBlob) + bomSize; |
| 1361 | zUtf8 = fossil_unicode_to_utf8(zUtf8); |
| 1362 | blob_set_dynamic(pBlob, zUtf8); |
| 1363 | }else if( useMbcs && invalid_utf8(pBlob) ){ |
| 1364 | #if defined(_WIN32) || defined(__CYGWIN__) |
| 1365 | zUtf8 = fossil_mbcs_to_utf8(blob_str(pBlob)); |
| 1366 | blob_reset(pBlob); |
| 1367 |
| --- src/blob.c | |
| +++ src/blob.c | |
| @@ -1357,10 +1357,11 @@ | |
| 1357 | } |
| 1358 | /* Make sure the blob contains two terminating 0-bytes */ |
| 1359 | blob_append(pBlob, "\000\000", 3); |
| 1360 | zUtf8 = blob_str(pBlob) + bomSize; |
| 1361 | zUtf8 = fossil_unicode_to_utf8(zUtf8); |
| 1362 | blob_reset(pBlob); |
| 1363 | blob_set_dynamic(pBlob, zUtf8); |
| 1364 | }else if( useMbcs && invalid_utf8(pBlob) ){ |
| 1365 | #if defined(_WIN32) || defined(__CYGWIN__) |
| 1366 | zUtf8 = fossil_mbcs_to_utf8(blob_str(pBlob)); |
| 1367 | blob_reset(pBlob); |
| 1368 |
+2
-2
| --- src/wikiformat.c | ||
| +++ src/wikiformat.c | ||
| @@ -1119,13 +1119,13 @@ | ||
| 1119 | 1119 | memcpy(zLower, zTarget, n+1); |
| 1120 | 1120 | canonical16(zLower, n+1); |
| 1121 | 1121 | memcpy(zUpper, zLower, n+1); |
| 1122 | 1122 | zUpper[n-1]++; |
| 1123 | 1123 | if( !db_static_stmt_is_init(&q) ){ |
| 1124 | - const char *zClosedExpr = db_get("ticket-closed-expr", "status='Closed'"); | |
| 1124 | + char *zClosedExpr = db_get("ticket-closed-expr", "status='Closed'"); | |
| 1125 | 1125 | db_static_prepare(&q, |
| 1126 | - "SELECT %s FROM ticket " | |
| 1126 | + "SELECT %z FROM ticket " | |
| 1127 | 1127 | " WHERE tkt_uuid>=:lwr AND tkt_uuid<:upr", |
| 1128 | 1128 | zClosedExpr /*safe-for-%s*/ |
| 1129 | 1129 | ); |
| 1130 | 1130 | } |
| 1131 | 1131 | db_bind_text(&q, ":lwr", zLower); |
| 1132 | 1132 |
| --- src/wikiformat.c | |
| +++ src/wikiformat.c | |
| @@ -1119,13 +1119,13 @@ | |
| 1119 | memcpy(zLower, zTarget, n+1); |
| 1120 | canonical16(zLower, n+1); |
| 1121 | memcpy(zUpper, zLower, n+1); |
| 1122 | zUpper[n-1]++; |
| 1123 | if( !db_static_stmt_is_init(&q) ){ |
| 1124 | const char *zClosedExpr = db_get("ticket-closed-expr", "status='Closed'"); |
| 1125 | db_static_prepare(&q, |
| 1126 | "SELECT %s FROM ticket " |
| 1127 | " WHERE tkt_uuid>=:lwr AND tkt_uuid<:upr", |
| 1128 | zClosedExpr /*safe-for-%s*/ |
| 1129 | ); |
| 1130 | } |
| 1131 | db_bind_text(&q, ":lwr", zLower); |
| 1132 |
| --- src/wikiformat.c | |
| +++ src/wikiformat.c | |
| @@ -1119,13 +1119,13 @@ | |
| 1119 | memcpy(zLower, zTarget, n+1); |
| 1120 | canonical16(zLower, n+1); |
| 1121 | memcpy(zUpper, zLower, n+1); |
| 1122 | zUpper[n-1]++; |
| 1123 | if( !db_static_stmt_is_init(&q) ){ |
| 1124 | char *zClosedExpr = db_get("ticket-closed-expr", "status='Closed'"); |
| 1125 | db_static_prepare(&q, |
| 1126 | "SELECT %z FROM ticket " |
| 1127 | " WHERE tkt_uuid>=:lwr AND tkt_uuid<:upr", |
| 1128 | zClosedExpr /*safe-for-%s*/ |
| 1129 | ); |
| 1130 | } |
| 1131 | db_bind_text(&q, ":lwr", zLower); |
| 1132 |