From: Derick Rethans Date: Fri, 25 Jul 2008 08:16:03 +0000 (+0000) Subject: - Fixed size calculation. X-Git-Tag: BEFORE_HEAD_NS_CHANGE~1063 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=1371ec3fbf942320eb62c9761496d4770b7a71fc;p=php - Fixed size calculation. - Reverted cosmetic fixes that makes upgrading harder. --- diff --git a/ext/fileinfo/libmagic/apprentice.c b/ext/fileinfo/libmagic/apprentice.c index 7939102ef0..1d525f37c8 100644 --- a/ext/fileinfo/libmagic/apprentice.c +++ b/ext/fileinfo/libmagic/apprentice.c @@ -582,7 +582,6 @@ set_test_type(struct magic *mstart, struct magic *m) /* invalid search type, but no need to complain here */ break; } - return 1; } /* @@ -664,7 +663,7 @@ apprentice_load(struct magic_set *ms, struct magic **magicp, uint32_t *nmagicp, if (stat(fn, &st) == 0 && S_ISDIR(st.st_mode)) { dir = opendir(fn); if (dir) { - while ((d = readdir(dir))) { + while (d = readdir(dir)) { snprintf(subfn, sizeof(subfn), "%s/%s", fn, d->d_name); if (stat(subfn, &st) == 0 && S_ISREG(st.st_mode)) { @@ -1976,11 +1975,14 @@ internal_loaded: VERSIONNO, dbname, version); goto error1; } -#ifndef PHP_BUNDLE - *nmagicp = (st.st_size / sizeof(struct magic)); +#ifdef PHP_BUNDLE + if (fn == NULL) + *nmagicp = (sizeof(php_magic_database) / sizeof(struct magic)); + else // the statement after the #endif is used +#endif + *nmagicp = (uint32_t)(st.st_size / sizeof(struct magic)); if (*nmagicp > 0) (*nmagicp)--; -#endif (*magicp)++; if (needsbyteswap) byteswap(*magicp, *nmagicp); diff --git a/ext/fileinfo/libmagic/funcs.c b/ext/fileinfo/libmagic/funcs.c index ef3d3e7dac..d9e84fa6da 100644 --- a/ext/fileinfo/libmagic/funcs.c +++ b/ext/fileinfo/libmagic/funcs.c @@ -48,6 +48,7 @@ protected int file_printf(struct magic_set *ms, const char *fmt, ...) { va_list ap; + size_t size; int len; char *buf, *newstr;