diff options
-rw-r--r-- | ext/standard/base64.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/ext/standard/base64.c b/ext/standard/base64.c index 32c63a36c4..d0a565fde4 100644 --- a/ext/standard/base64.c +++ b/ext/standard/base64.c @@ -74,18 +74,21 @@ unsigned char *_php3_base64_decode(const unsigned char *string, int length, int /* this sucks for threaded environments */ static short reverse_table[256]; static int table_built; + unsigned char *result; - if(++table_built == 1) { + if (++table_built == 1) { char *chp; for(ch = 0; ch < 256; ch++) { chp = strchr(base64_table, ch); - if(chp) + if(chp) { reverse_table[ch] = chp - base64_table; - else + } else { reverse_table[ch] = -1; + } + } } - unsigned char *result = (unsigned char *)emalloc((length / 4 * 3 + 1) * sizeof(char)); + result = (unsigned char *)emalloc((length / 4 * 3 + 1) * sizeof(char)); if (result == NULL) { return NULL; } |