From 3cfd83e1a69a38bca040a1a9b99a3293c481ceb1 Mon Sep 17 00:00:00 2001 From: Laurence Withers Date: Tue, 3 Nov 2009 23:08:55 +0000 Subject: [PATCH 1/3] Fix potential null pointer dereference utf8_encoder() was incorrectly dereferencing the pointer `state' before testing it against null; fix by removing the variable initialisers. --- src/libutf8/500_encode_state.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/libutf8/500_encode_state.c b/src/libutf8/500_encode_state.c index ff76eba..3fe4946 100644 --- a/src/libutf8/500_encode_state.c +++ b/src/libutf8/500_encode_state.c @@ -10,8 +10,7 @@ struct utf8_encode_state* utf8_encoder(struct utf8_encode_state* state) { - char* wr = state->wr, * ret; - char* endp = wr + state->wr_size - 1; + char* wr, * ret, * endp; wchar_t ch; enum utf8_encode_error_action error_action; int reencoding; @@ -21,6 +20,9 @@ utf8_encoder(struct utf8_encode_state* state) return 0; } + wr = state->wr; + endp = wr + state->wr_size - 1; + state->written = 0; while(state->rd_remain) { ch = *state->rd; From 22d58219e7941598ad42ccfcce2fc53bf8b48928 Mon Sep 17 00:00:00 2001 From: Laurence Withers Date: Tue, 3 Nov 2009 23:10:15 +0000 Subject: [PATCH 2/3] Bump version --- src/libutf8/soversion | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libutf8/soversion b/src/libutf8/soversion index 9627492..52b6370 100644 --- a/src/libutf8/soversion +++ b/src/libutf8/soversion @@ -12,4 +12,4 @@ SOMAJOR=1 # SOMICRO is bumped every time there is a binary-compatible release. -SOMICRO=1 +SOMICRO=2 From f2462dbeab26047db150bd2649425fd2e42402e7 Mon Sep 17 00:00:00 2001 From: Laurence Withers Date: Tue, 3 Nov 2009 23:10:15 +0000 Subject: [PATCH 3/3] Bump version --- version | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version b/version index 381bec4..7ba279b 100644 --- a/version +++ b/version @@ -11,7 +11,7 @@ # expected to be in 'major.minor.micro' format. VERMAJOR=1 VERMINOR=3 -VERMICRO=1 +VERMICRO=2 # kate: replace-trailing-space-save true; space-indent true; tab-width 4; # vim: expandtab:ts=4:sw=4:syntax=sh