diff options
author | David Carlier <devnexen@gmail.com> | 2020-08-13 09:40:24 +0000 |
---|---|---|
committer | Christoph M. Becker <cmbecker69@gmx.de> | 2020-08-21 16:13:09 +0200 |
commit | f32653accc0fc2401aca91f9590272b8d95ef426 (patch) | |
tree | d401bd7ee61bf0e71a7b8f4e23bc3c240f839cac /ext/fileinfo/libmagic | |
parent | 3c5412fc8f42c9376875b9ed5524cc0be19ef656 (diff) | |
download | php-git-f32653accc0fc2401aca91f9590272b8d95ef426.tar.gz |
fileinfo build fix proposal for haiku.
Haiku already defines a unichar type and different than the fileinfo's anyway.
Closed GH-5983
Diffstat (limited to 'ext/fileinfo/libmagic')
-rw-r--r-- | ext/fileinfo/libmagic/ascmagic.c | 8 | ||||
-rw-r--r-- | ext/fileinfo/libmagic/encoding.c | 60 | ||||
-rw-r--r-- | ext/fileinfo/libmagic/file.h | 8 |
3 files changed, 38 insertions, 38 deletions
diff --git a/ext/fileinfo/libmagic/ascmagic.c b/ext/fileinfo/libmagic/ascmagic.c index 0bc0cce1de..348f6d6bd7 100644 --- a/ext/fileinfo/libmagic/ascmagic.c +++ b/ext/fileinfo/libmagic/ascmagic.c @@ -51,7 +51,7 @@ FILE_RCSID("@(#)$File: ascmagic.c,v 1.104 2019/05/07 02:27:11 christos Exp $") #define ISSPC(x) ((x) == ' ' || (x) == '\t' || (x) == '\r' || (x) == '\n' \ || (x) == 0x85 || (x) == '\f') -private unsigned char *encode_utf8(unsigned char *, size_t, unichar *, size_t); +private unsigned char *encode_utf8(unsigned char *, size_t, unicodechar *, size_t); private size_t trim_nuls(const unsigned char *, size_t); /* @@ -70,7 +70,7 @@ trim_nuls(const unsigned char *buf, size_t nbytes) protected int file_ascmagic(struct magic_set *ms, const struct buffer *b, int text) { - unichar *ubuf = NULL; + unicodechar *ubuf = NULL; size_t ulen = 0; int rv = 1; struct buffer bb; @@ -103,7 +103,7 @@ file_ascmagic(struct magic_set *ms, const struct buffer *b, int text) protected int file_ascmagic_with_encoding(struct magic_set *ms, - const struct buffer *b, unichar *ubuf, size_t ulen, const char *code, + const struct buffer *b, unicodechar *ubuf, size_t ulen, const char *code, const char *type, int text) { struct buffer bb; @@ -338,7 +338,7 @@ done: * after end of string, or NULL if an invalid character is found. */ private unsigned char * -encode_utf8(unsigned char *buf, size_t len, unichar *ubuf, size_t ulen) +encode_utf8(unsigned char *buf, size_t len, unicodechar *ubuf, size_t ulen) { size_t i; unsigned char *end = buf + len; diff --git a/ext/fileinfo/libmagic/encoding.c b/ext/fileinfo/libmagic/encoding.c index 121bbd7143..8d0e6012e5 100644 --- a/ext/fileinfo/libmagic/encoding.c +++ b/ext/fileinfo/libmagic/encoding.c @@ -44,14 +44,14 @@ FILE_RCSID("@(#)$File: encoding.c,v 1.20 2019/04/15 16:48:41 christos Exp $") #include <stdlib.h> -private int looks_ascii(const unsigned char *, size_t, unichar *, size_t *); -private int looks_utf8_with_BOM(const unsigned char *, size_t, unichar *, +private int looks_ascii(const unsigned char *, size_t, unicodechar *, size_t *); +private int looks_utf8_with_BOM(const unsigned char *, size_t, unicodechar *, size_t *); -private int looks_utf7(const unsigned char *, size_t, unichar *, size_t *); -private int looks_ucs16(const unsigned char *, size_t, unichar *, size_t *); -private int looks_ucs32(const unsigned char *, size_t, unichar *, size_t *); -private int looks_latin1(const unsigned char *, size_t, unichar *, size_t *); -private int looks_extended(const unsigned char *, size_t, unichar *, size_t *); +private int looks_utf7(const unsigned char *, size_t, unicodechar *, size_t *); +private int looks_ucs16(const unsigned char *, size_t, unicodechar *, size_t *); +private int looks_ucs32(const unsigned char *, size_t, unicodechar *, size_t *); +private int looks_latin1(const unsigned char *, size_t, unicodechar *, size_t *); +private int looks_extended(const unsigned char *, size_t, unicodechar *, size_t *); private void from_ebcdic(const unsigned char *, size_t, unsigned char *); #ifdef DEBUG_ENCODING @@ -63,11 +63,11 @@ private void from_ebcdic(const unsigned char *, size_t, unsigned char *); /* * Try to determine whether text is in some character code we can * identify. Each of these tests, if it succeeds, will leave - * the text converted into one-unichar-per-character Unicode in + * the text converted into one-unicodechar-per-character Unicode in * ubuf, and the number of characters converted in ulen. */ protected int -file_encoding(struct magic_set *ms, const struct buffer *b, unichar **ubuf, +file_encoding(struct magic_set *ms, const struct buffer *b, unicodechar **ubuf, size_t *ulen, const char **code, const char **code_mime, const char **type) { const unsigned char *buf = CAST(const unsigned char *, b->fbuf); @@ -75,7 +75,7 @@ file_encoding(struct magic_set *ms, const struct buffer *b, unichar **ubuf, size_t mlen; int rv = 1, ucs_type; unsigned char *nbuf = NULL; - unichar *udefbuf; + unicodechar *udefbuf; size_t udeflen; if (ubuf == NULL) @@ -89,7 +89,7 @@ file_encoding(struct magic_set *ms, const struct buffer *b, unichar **ubuf, *code_mime = "binary"; mlen = (nbytes + 1) * sizeof((*ubuf)[0]); - if ((*ubuf = CAST(unichar *, ecalloc(CAST(size_t, 1), mlen))) == NULL) { + if ((*ubuf = CAST(unicodechar *, ecalloc(CAST(size_t, 1), mlen))) == NULL) { file_oomem(ms, mlen); goto done; } @@ -251,7 +251,7 @@ private char text_chars[256] = { }; private int -looks_ascii(const unsigned char *buf, size_t nbytes, unichar *ubuf, +looks_ascii(const unsigned char *buf, size_t nbytes, unicodechar *ubuf, size_t *ulen) { size_t i; @@ -271,7 +271,7 @@ looks_ascii(const unsigned char *buf, size_t nbytes, unichar *ubuf, } private int -looks_latin1(const unsigned char *buf, size_t nbytes, unichar *ubuf, size_t *ulen) +looks_latin1(const unsigned char *buf, size_t nbytes, unicodechar *ubuf, size_t *ulen) { size_t i; @@ -290,7 +290,7 @@ looks_latin1(const unsigned char *buf, size_t nbytes, unichar *ubuf, size_t *ule } private int -looks_extended(const unsigned char *buf, size_t nbytes, unichar *ubuf, +looks_extended(const unsigned char *buf, size_t nbytes, unicodechar *ubuf, size_t *ulen) { size_t i; @@ -321,11 +321,11 @@ looks_extended(const unsigned char *buf, size_t nbytes, unichar *ubuf, * ubuf must be big enough! */ protected int -file_looks_utf8(const unsigned char *buf, size_t nbytes, unichar *ubuf, size_t *ulen) +file_looks_utf8(const unsigned char *buf, size_t nbytes, unicodechar *ubuf, size_t *ulen) { size_t i; int n; - unichar c; + unicodechar c; int gotone = 0, ctrl = 0; if (ubuf) @@ -392,7 +392,7 @@ done: * rest of the text. */ private int -looks_utf8_with_BOM(const unsigned char *buf, size_t nbytes, unichar *ubuf, +looks_utf8_with_BOM(const unsigned char *buf, size_t nbytes, unicodechar *ubuf, size_t *ulen) { if (nbytes > 3 && buf[0] == 0xef && buf[1] == 0xbb && buf[2] == 0xbf) @@ -402,7 +402,7 @@ looks_utf8_with_BOM(const unsigned char *buf, size_t nbytes, unichar *ubuf, } private int -looks_utf7(const unsigned char *buf, size_t nbytes, unichar *ubuf, size_t *ulen) +looks_utf7(const unsigned char *buf, size_t nbytes, unicodechar *ubuf, size_t *ulen) { if (nbytes > 4 && buf[0] == '+' && buf[1] == '/' && buf[2] == 'v') switch (buf[3]) { @@ -421,7 +421,7 @@ looks_utf7(const unsigned char *buf, size_t nbytes, unichar *ubuf, size_t *ulen) } private int -looks_ucs16(const unsigned char *bf, size_t nbytes, unichar *ubf, +looks_ucs16(const unsigned char *bf, size_t nbytes, unicodechar *ubf, size_t *ulen) { int bigend; @@ -444,10 +444,10 @@ looks_ucs16(const unsigned char *bf, size_t nbytes, unichar *ubf, if (bigend) ubf[(*ulen)++] = bf[i + 1] - | (CAST(unichar, bf[i]) << 8); + | (CAST(unicodechar, bf[i]) << 8); else ubf[(*ulen)++] = bf[i] - | (CAST(unichar, bf[i + 1]) << 8); + | (CAST(unicodechar, bf[i + 1]) << 8); if (ubf[*ulen - 1] == 0xfffe) return 0; @@ -460,7 +460,7 @@ looks_ucs16(const unsigned char *bf, size_t nbytes, unichar *ubf, } private int -looks_ucs32(const unsigned char *bf, size_t nbytes, unichar *ubf, +looks_ucs32(const unsigned char *bf, size_t nbytes, unicodechar *ubf, size_t *ulen) { int bigend; @@ -482,15 +482,15 @@ looks_ucs32(const unsigned char *bf, size_t nbytes, unichar *ubf, /* XXX fix to properly handle chars > 65536 */ if (bigend) - ubf[(*ulen)++] = CAST(unichar, bf[i + 3]) - | (CAST(unichar, bf[i + 2]) << 8) - | (CAST(unichar, bf[i + 1]) << 16) - | (CAST(unichar, bf[i]) << 24); + ubf[(*ulen)++] = CAST(unicodechar, bf[i + 3]) + | (CAST(unicodechar, bf[i + 2]) << 8) + | (CAST(unicodechar, bf[i + 1]) << 16) + | (CAST(unicodechar, bf[i]) << 24); else - ubf[(*ulen)++] = CAST(unichar, bf[i + 0]) - | (CAST(unichar, bf[i + 1]) << 8) - | (CAST(unichar, bf[i + 2]) << 16) - | (CAST(unichar, bf[i + 3]) << 24); + ubf[(*ulen)++] = CAST(unicodechar, bf[i + 0]) + | (CAST(unicodechar, bf[i + 1]) << 8) + | (CAST(unicodechar, bf[i + 2]) << 16) + | (CAST(unicodechar, bf[i + 3]) << 24); if (ubf[*ulen - 1] == 0xfffe) return 0; diff --git a/ext/fileinfo/libmagic/file.h b/ext/fileinfo/libmagic/file.h index 3450f745bd..b588efcadb 100644 --- a/ext/fileinfo/libmagic/file.h +++ b/ext/fileinfo/libmagic/file.h @@ -439,7 +439,7 @@ struct magic_set { }; /* Type for Unicode characters */ -typedef unsigned long unichar; +typedef unsigned long unicodechar; #define FILE_T_LOCAL 1 #define FILE_T_WINDOWS 2 @@ -464,9 +464,9 @@ protected int file_zmagic(struct magic_set *, const struct buffer *, protected int file_ascmagic(struct magic_set *, const struct buffer *, int); protected int file_ascmagic_with_encoding(struct magic_set *, - const struct buffer *, unichar *, size_t, const char *, const char *, int); + const struct buffer *, unicodechar *, size_t, const char *, const char *, int); protected int file_encoding(struct magic_set *, const struct buffer *, - unichar **, size_t *, const char **, const char **, const char **); + unicodechar **, size_t *, const char **, const char **, const char **); protected int file_is_json(struct magic_set *, const struct buffer *); protected int file_is_tar(struct magic_set *, const struct buffer *); protected int file_softmagic(struct magic_set *, const struct buffer *, @@ -488,7 +488,7 @@ protected size_t file_mbswidth(const char *); protected const char *file_getbuffer(struct magic_set *); protected ssize_t sread(int, void *, size_t, int); protected int file_check_mem(struct magic_set *, unsigned int); -protected int file_looks_utf8(const unsigned char *, size_t, unichar *, +protected int file_looks_utf8(const unsigned char *, size_t, unicodechar *, size_t *); protected size_t file_pstring_length_size(const struct magic *); protected size_t file_pstring_get_length(const struct magic *, const char *); |