Makefile.am | 6 ++-- configure.ac | 84 ++++++++++++++++++++++++++++----------------------------- src/encparse.c | 40 ++++++++++++--------------- src/fontenc.c | 56 +++++++++++++++++--------------------- 4 files changed, 89 insertions(+), 97 deletions(-)
New commits: commit 6012075d945e527866ef31b8796e04d6581071db Author: Alan Coopersmith <[email protected]> Date: Fri Mar 2 17:51:30 2012 -0800 libfontenc 1.1.1 Signed-off-by: Alan Coopersmith <[email protected]> diff --git a/configure.ac b/configure.ac index 8409df8..37089c2 100644 --- a/configure.ac +++ b/configure.ac @@ -21,7 +21,7 @@ # Initialize Autoconf AC_PREREQ([2.60]) -AC_INIT([libfontenc], [1.1.0], +AC_INIT([libfontenc], [1.1.1], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], [libfontenc]) AC_CONFIG_SRCDIR([Makefile.am]) AC_CONFIG_HEADERS([config.h]) commit 381c9efec4c066d984514d226b61b3360741aea2 Author: Jeremy Huddleston <[email protected]> Date: Fri Nov 11 10:22:52 2011 -0800 Include strings.h for strcasecmp Our minimum requirement for X11 is currently Unix98. Unix98 provides strcasecmp in <strings.h>. This commit fixes implicit declarations of this function on systems that closely adhere to the standard. Signed-off-by: Jeremy Huddleston <[email protected]> diff --git a/src/encparse.c b/src/encparse.c index 03b2afa..cbcac80 100644 --- a/src/encparse.c +++ b/src/encparse.c @@ -28,11 +28,8 @@ THE SOFTWARE. to be pure ASCII. Bloody ``Code Set Independence''. */ #include <string.h> -#include <stdio.h> - -#if defined(__SCO__) || defined(__UNIXWARE__) #include <strings.h> -#endif +#include <stdio.h> #include <stdlib.h> diff --git a/src/fontenc.c b/src/fontenc.c index 837c925..fb56ff1 100644 --- a/src/fontenc.c +++ b/src/fontenc.c @@ -23,11 +23,7 @@ THE SOFTWARE. /* Backend-independent encoding code */ #include <string.h> - -#if defined(__SCO__) || defined(__UNIXWARE__) #include <strings.h> -#endif - #include <stdlib.h> #define FALSE 0 commit 1da600011b7e89981592308843ce7230fa5f87f1 Author: Alan Coopersmith <[email protected]> Date: Fri Sep 16 22:07:14 2011 -0700 Strip trailing whitespace Performed with: find * -type f | xargs perl -i -p -e 's{[ \t]+$}{}' git diff -w & git diff -b show no diffs from this change Signed-off-by: Alan Coopersmith <[email protected]> diff --git a/Makefile.am b/Makefile.am index e793d4c..481f272 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,6 +1,6 @@ -# +# # Copyright 2005 Red Hat, Inc. -# +# # Permission to use, copy, modify, distribute, and sell this software and its # documentation for any purpose is hereby granted without fee, provided that # the above copyright notice appear in all copies and that both that @@ -10,7 +10,7 @@ # specific, written prior permission. Red Hat makes no # representations about the suitability of this software for any purpose. It # is provided "as is" without express or implied warranty. -# +# # RED HAT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, # INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO # EVENT SHALL RED HAT BE LIABLE FOR ANY SPECIAL, INDIRECT OR diff --git a/src/encparse.c b/src/encparse.c index 3fe94e8..03b2afa 100644 --- a/src/encparse.c +++ b/src/encparse.c @@ -85,7 +85,7 @@ skipEndOfLine(FontFilePtr f, int c) { if(c == 0) c = FontFileGetc(f); - + for(;;) if(c <= 0 || c == '\n') return; @@ -125,7 +125,7 @@ getnum(FontFilePtr f, int c, int *cp) *cp = c; return n; } - + /* Skip to beginning of new line; return 1 if only whitespace was found. */ static int endOfLine(FontFilePtr f, int c) @@ -362,7 +362,7 @@ getnextline(FontFilePtr f) return ERROR_LINE; } } else if(!strcasecmp(keyword_value, "ENDENCODING")) { - if(endOfLine(f,c)) + if(endOfLine(f,c)) return EOF_LINE; else return ERROR_LINE; @@ -380,7 +380,7 @@ getnextline(FontFilePtr f) } } -static void +static void install_mapping(FontEncPtr encoding, FontMapPtr mapping) { FontMapPtr m; @@ -637,7 +637,7 @@ parseEncodingFile(FontFilePtr f, int headerOnly) goto error; } goto mapping; - + case CODE_UNDEFINE_LINE: if(value1 > 0x10000) value1 = 0x10000; @@ -658,7 +658,7 @@ parseEncodingFile(FontFilePtr f, int headerOnly) default: goto mapping; /* ignore unknown lines */ } - + string_mapping: line = getnextline(f); switch(line) { @@ -791,16 +791,16 @@ parseFontFileName(const char *fontFileName, char *buf, char *dir) { const char *p; char *q, *lastslash; - + for(p = fontFileName, q = dir, lastslash = NULL; *p; p++, q++) { *q = *p; if(*p == '/') lastslash = q+1; } - + if(!lastslash) lastslash = dir; - + *lastslash = '\0'; if(buf && strlen(dir) + 14 < MAXFONTFILENAMELEN) { @@ -810,7 +810,7 @@ parseFontFileName(const char *fontFileName, char *buf, char *dir) } static FontEncPtr -FontEncReallyReallyLoad(const char *charset, +FontEncReallyReallyLoad(const char *charset, const char *dirname, const char *dir) { FontFilePtr f; @@ -820,14 +820,14 @@ FontEncReallyReallyLoad(const char *charset, buf[MAXFONTFILENAMELEN]; int count, n; static char format[24] = ""; - + /* As we don't really expect to open encodings that often, we don't take the trouble of caching encodings directories. */ if((file = fopen(dirname, "r")) == NULL) { return NULL; } - + count = fscanf(file, "%d\n", &n); if(count == EOF || count != 1) { fclose(file); @@ -861,7 +861,7 @@ FontEncReallyReallyLoad(const char *charset, f = FontFileOpen(buf); if(f == NULL) { - fclose(file); + fclose(file); return NULL; } encoding = parseEncodingFile(f, 0); @@ -875,7 +875,7 @@ FontEncReallyReallyLoad(const char *charset, return encoding; } -/* Parser ntrypoint -- used by FontEncLoad */ +/* Parser ntrypoint -- used by FontEncLoad */ FontEncPtr FontEncReallyLoad(const char *charset, const char *fontFileName) { @@ -889,14 +889,14 @@ FontEncReallyLoad(const char *charset, const char *fontFileName) if(encoding) return(encoding); } - + d = FontEncDirectory(); if(d) { parseFontFileName(d, NULL, dir); encoding = FontEncReallyReallyLoad(charset, d, dir); return encoding; } - + return NULL; } @@ -911,7 +911,7 @@ FontEncIdentify(const char *fileName) FontEncPtr encoding; char **names, **name, **alias; int numaliases; - + if((f = FontFileOpen(fileName))==NULL) { return NULL; } diff --git a/src/fontenc.c b/src/fontenc.c index 86f5952..837c925 100644 --- a/src/fontenc.c +++ b/src/fontenc.c @@ -59,7 +59,7 @@ static FontMapRec iso10646[]= There's not much more we can do with fonts without a Unicode cmap unless we are willing to combine cmaps (which we are not). */ -static const unsigned short +static const unsigned short iso8859_1_apple_roman[]= { 0xCA, 0xC1, 0xA2, 0xA3, 0xDB, 0xB4, 0x00, 0xA4, 0xAC, 0xA9, 0xBB, 0xC7, 0xC2, 0x00, 0xA8, 0xF8, @@ -212,7 +212,7 @@ static const unsigned short iso8859_5_tophalf[]= static FontEncSimpleMapRec iso8859_5_to_unicode_map= { 0x60, 0, 0xA0, iso8859_5_tophalf }; -static const unsigned short +static const unsigned short iso8859_5_apple_cyrillic[]= { 0xCA, 0xDD, 0xAB, 0xAE, 0xB8, 0xC1, 0xA7, 0xBA, 0xB7, 0xBC, 0xBE, 0xCB, 0xCD, 0x00, 0xD8, 0xDA, @@ -253,7 +253,7 @@ iso8859_6_to_unicode(unsigned isocode, void *client_data) { if(isocode<=0xA0 || isocode==0xA4 || isocode==0xAD) return isocode; - else if(isocode==0xAC || isocode==0xBB || + else if(isocode==0xAC || isocode==0xBB || (isocode>=0xBF && isocode<=0xDA) || (isocode>=0xE0 && isocode<=0xEF) || (isocode>=0xF0 && isocode<=0xF2)) @@ -268,7 +268,7 @@ static FontMapRec iso8859_6[]= {0,0,0,NULL,NULL,NULL,NULL,NULL} }; -static unsigned +static unsigned iso8859_7_to_unicode(unsigned isocode, void *client_data) { if(isocode<=0xA0 || @@ -305,7 +305,7 @@ iso8859_8_to_unicode(unsigned isocode, void *client_data) return 0x2017; else if(isocode>=0xE0 && isocode<=0xFA) return isocode+0x04F0; - else + else return 0; } @@ -410,7 +410,7 @@ static FontMapRec koi8_r[]= {0,0,0,NULL,NULL,NULL,NULL,NULL} }; -static unsigned +static unsigned koi8_ru_to_unicode(unsigned koicode, void *client_data) { switch(koicode) { @@ -458,7 +458,7 @@ koi8_e_to_unicode(unsigned koicode, void *client_data) return koicode; else if(koicode<0xC0) return koi8_e_A0_BF[koicode-0xA0]; - else + else return FontEncSimpleRecode(koicode, &koi8_r_to_unicode_map); } @@ -480,7 +480,7 @@ static const unsigned short koi8_uni_80_BF[]= 0x2116, 0x0402, 0x0403, 0x0401, 0x0404, 0x0405, 0x0406, 0x0407, 0x0408, 0x0409, 0x040A, 0x040B, 0x040C, 0x0490, 0x040E, 0x040F }; -static unsigned +static unsigned koi8_uni_to_unicode(unsigned koicode, void *client_data) { if(koicode<0x80) @@ -499,7 +499,7 @@ static FontMapRec koi8_uni[]= /* Ukrainian variant of Koi8-R; see RFC 2319 */ -static unsigned +static unsigned koi8_u_to_unicode(unsigned koicode, void *client_data) { switch(koicode) { @@ -526,9 +526,9 @@ static FontMapRec koi8_u[]= the glyph index before applying the cmap. Lovely design. */ static FontMapRec microsoft_symbol[]= -{{FONT_ENCODING_TRUETYPE,3,0,NULL,NULL,NULL,NULL,NULL}, +{{FONT_ENCODING_TRUETYPE,3,0,NULL,NULL,NULL,NULL,NULL}, /* You never know */ - {FONT_ENCODING_TRUETYPE,3,1,NULL,NULL,NULL,NULL,NULL}, + {FONT_ENCODING_TRUETYPE,3,1,NULL,NULL,NULL,NULL,NULL}, {0,0,0,NULL,NULL,NULL,NULL,NULL}}; static FontMapRec apple_roman[]= @@ -619,15 +619,15 @@ FontEncFromXLFD(const char *name, int length) if(p == NULL) return NULL; - + len = length - (p - name) - 1; memcpy(charset, p+1, len); charset[len] = 0; - + /* check for a subset specification */ if((q = strchr(charset, (int)'['))) *q = 0; - + return charset; } @@ -659,7 +659,7 @@ FontEncName(unsigned code, FontMapPtr mapping) if(encoding && mapping->name) { if((encoding->row_size == 0 && code >= encoding->size) || (encoding->row_size != 0 && - (code/0x100 >= encoding->size || + (code/0x100 >= encoding->size || (code&0xFF) >= encoding->row_size))) return NULL; return (*mapping->name)(code, mapping->client_data); @@ -672,9 +672,9 @@ FontEncFind(const char *encoding_name, const char *filename) { FontEncPtr encoding; char **alias; - + if(font_encodings == NULL) define_initial_encoding_info(); - + for(encoding = font_encodings; encoding; encoding = encoding->next) { if(!strcasecmp(encoding->name, encoding_name)) return encoding; @@ -725,14 +725,14 @@ static FontEncPtr FontEncLoad(const char *encoding_name, const char *filename) { FontEncPtr encoding; - + encoding = FontEncReallyLoad(encoding_name, filename); if (encoding == NULL) { return NULL; } else { char **alias; int found = 0; - + /* Check whether the name is already known for this encoding */ if(strcasecmp(encoding->name, encoding_name) == 0) { found = 1; @@ -745,14 +745,14 @@ FontEncLoad(const char *encoding_name, const char *filename) } } } - + if(!found) { /* Add a new alias. This works because we know that this particular encoding has been allocated dynamically */ char **new_aliases; char *new_name; int numaliases = 0; - + new_name = strdup(encoding_name); if(new_name == NULL) return NULL; @@ -773,11 +773,11 @@ FontEncLoad(const char *encoding_name, const char *filename) new_aliases[numaliases+1] = NULL; encoding->aliases = new_aliases; } - + /* register the new encoding */ encoding->next=font_encodings; font_encodings=encoding; - + return encoding; } } @@ -798,7 +798,7 @@ FontEncSimpleRecode(unsigned code, void *client_data) else index = code; - if(map->map && index>=map->first && index<map->first+map->len) + if(map->map && index>=map->first && index<map->first+map->len) return map->map[index-map->first]; else return code; @@ -865,7 +865,7 @@ tree_set(unsigned int **map, unsigned int i, unsigned int j) c = i % FONTENC_SEGMENT_SIZE; if(map[s] == NULL) { - map[s] = calloc(FONTENC_SEGMENT_SIZE, sizeof(int)); + map[s] = calloc(FONTENC_SEGMENT_SIZE, sizeof(int)); if(map[s] == NULL) return FALSE; } @@ -923,7 +923,7 @@ FontMapReverseFree(FontMapReversePtr delendum) { unsigned int **map = (unsigned int**)delendum; int i; - + if(map == NULL) return; commit 272b776fbd8598ff447585b8105e622d8244db7c Author: Jeremy Huddleston <[email protected]> Date: Mon May 9 09:43:24 2011 -0700 Dead code removal encparse.c:750:9: warning: Value stored to 'namsize' is never read namsize = 0; ^ ~ Found-by: clang static analyzer Signed-off-by: Jeremy Huddleston <[email protected]> diff --git a/src/encparse.c b/src/encparse.c index 5b4cefb..3fe94e8 100644 --- a/src/encparse.c +++ b/src/encparse.c @@ -747,7 +747,6 @@ error: for(i = first; i <= last; i++) free(nam[i]); free(nam); - namsize = 0; } if(mapping) { free(mapping->client_data); commit 39800e873e8a57ee904aaf3e39315f5250bcd26f Author: Gaetan Nadon <[email protected]> Date: Thu Feb 3 17:37:36 2011 -0500 config: comment, minor upgrade, quote and layout configure.ac Group statements per section as per Autoconf standard layout Quote statements where appropriate. Autoconf recommends not using dnl instead of # for comments Use AC_CONFIG_FILES to replace the deprecated AC_OUTPUT with parameters. Add AC_CONFIG_SRCDIR([Makefile.am]) Update X.Org util-macros to version 1.8 This helps automated maintenance and release activities. Details can be found in http://wiki.x.org/wiki/NewModuleGuidelines Signed-off-by: Gaetan Nadon <[email protected]> diff --git a/configure.ac b/configure.ac index fc45784..8409df8 100644 --- a/configure.ac +++ b/configure.ac @@ -1,49 +1,48 @@ +# Copyright 2005 Red Hat, Inc. +# +# Permission to use, copy, modify, distribute, and sell this software and its +# documentation for any purpose is hereby granted without fee, provided that +# the above copyright notice appear in all copies and that both that +# copyright notice and this permission notice appear in supporting +# documentation, and that the name of Red Hat not be used in +# advertising or publicity pertaining to distribution of the software without +# specific, written prior permission. Red Hat makes no +# representations about the suitability of this software for any purpose. It +# is provided "as is" without express or implied warranty. +# +# RED HAT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, +# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO +# EVENT SHALL RED HAT BE LIABLE FOR ANY SPECIAL, INDIRECT OR +# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +# PERFORMANCE OF THIS SOFTWARE. +# -dnl Copyright 2005 Red Hat, Inc. -dnl -dnl Permission to use, copy, modify, distribute, and sell this software and its -dnl documentation for any purpose is hereby granted without fee, provided that -dnl the above copyright notice appear in all copies and that both that -dnl copyright notice and this permission notice appear in supporting -dnl documentation, and that the name of Red Hat not be used in -dnl advertising or publicity pertaining to distribution of the software without -dnl specific, written prior permission. Red Hat makes no -dnl representations about the suitability of this software for any purpose. It -dnl is provided "as is" without express or implied warranty. -dnl -dnl RED HAT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, -dnl INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO -dnl EVENT SHALL RED HAT BE LIABLE FOR ANY SPECIAL, INDIRECT OR -dnl CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, -dnl DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER -dnl TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR -dnl PERFORMANCE OF THIS SOFTWARE. -dnl -dnl Process this file with autoconf to create configure. - +# Initialize Autoconf AC_PREREQ([2.60]) - AC_INIT([libfontenc], [1.1.0], - [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], - [libfontenc]) + [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], [libfontenc]) +AC_CONFIG_SRCDIR([Makefile.am]) +AC_CONFIG_HEADERS([config.h]) + +# Initialize Automake AM_INIT_AUTOMAKE([foreign dist-bzip2]) AM_MAINTAINER_MODE -# Require xorg-macros: XORG_DEFAULT_OPTIONS +# Initialize libtool +AC_PROG_LIBTOOL + +# Require X.Org macros 1.8 or later m4_ifndef([XORG_MACROS_VERSION], - [m4_fatal([must install xorg-macros 1.3 or later before running autoconf/autogen])]) -XORG_MACROS_VERSION(1.3) + [m4_fatal([must install xorg-macros 1.8 or later before running autoconf/autogen])]) +XORG_MACROS_VERSION(1.8) XORG_DEFAULT_OPTIONS -AC_CONFIG_HEADERS(config.h) - -# Check for progs -AC_PROG_LIBTOOL # Require X.Org's font util macros 1.1 or later for XORG_FONTROOTDIR m4_ifndef([XORG_FONT_MACROS_VERSION], [m4_fatal([must install X.Org font-util 1.1 or later before running autoconf/autogen])]) XORG_FONT_MACROS_VERSION(1.1) - XORG_FONTSUBDIR([ENCODINGSDIR], [encodingsdir], [encodings]) # zlib @@ -52,14 +51,14 @@ AC_CHECK_HEADER([zlib.h], [], AC_CHECK_LIB(z, gzclose, [], AC_MSG_FAILURE([zlib is required to compile libfontenc])) -# Check for dependencies +# Obtain compiler/linker options for depedencies PKG_CHECK_MODULES(FONTENC, xproto) -dnl Allow checking code with lint, sparse, etc. +# Allow checking code with lint, sparse, etc. XORG_WITH_LINT LINT_FLAGS="${LINT_FLAGS} ${FONTENC_CFLAGS}" - -AC_OUTPUT([Makefile - src/Makefile - fontenc.pc]) +AC_CONFIG_FILES([Makefile + src/Makefile + fontenc.pc]) +AC_OUTPUT commit bd845a08f03afc4065cf418647d27129044fe96f Author: Gaetan Nadon <[email protected]> Date: Fri Jan 28 19:41:37 2011 -0500 config: replace deprecated AM_CONFIG_HEADER with AC_CONFIG_HEADERS Signed-off-by: Gaetan Nadon <[email protected]> diff --git a/configure.ac b/configure.ac index 27d80fd..fc45784 100644 --- a/configure.ac +++ b/configure.ac @@ -34,7 +34,7 @@ m4_ifndef([XORG_MACROS_VERSION], [m4_fatal([must install xorg-macros 1.3 or later before running autoconf/autogen])]) XORG_MACROS_VERSION(1.3) XORG_DEFAULT_OPTIONS -AM_CONFIG_HEADER(config.h) +AC_CONFIG_HEADERS(config.h) # Check for progs AC_PROG_LIBTOOL commit 8acc384499a31bd41a7b62e8f6977d67182e5f06 Author: Gaetan Nadon <[email protected]> Date: Thu Jan 27 18:50:14 2011 -0500 config: remove AC_PROG_CC as it overrides AC_PROG_C_C99 XORG_STRICT_OPTION from XORG_DEFAULT_OPTIONS calls AC_PROG_C_C99. This sets gcc with -std=gnu99. If AC_PROG_CC macro is called afterwards, it resets CC to gcc. Signed-off-by: Gaetan Nadon <[email protected]> diff --git a/configure.ac b/configure.ac index 9419909..27d80fd 100644 --- a/configure.ac +++ b/configure.ac @@ -37,7 +37,6 @@ XORG_DEFAULT_OPTIONS AM_CONFIG_HEADER(config.h) # Check for progs -AC_PROG_CC AC_PROG_LIBTOOL # Require X.Org's font util macros 1.1 or later for XORG_FONTROOTDIR commit 0e3929c939d3f6c2ca79defcad8d2cceb3dba5df Author: Alan Coopersmith <[email protected]> Date: Fri Nov 19 22:03:22 2010 -0800 Fail configure if zlib.h & -lz not found Fixes https://bugs.freedesktop.org/show_bug.cgi?id=31595 Signed-off-by: Alan Coopersmith <[email protected]> Reviewed-by: Julien Cristau <[email protected]> Reviewed-by: Dan Nicholson <[email protected]> diff --git a/configure.ac b/configure.ac index fb0b1af..9419909 100644 --- a/configure.ac +++ b/configure.ac @@ -48,8 +48,10 @@ XORG_FONT_MACROS_VERSION(1.1) XORG_FONTSUBDIR([ENCODINGSDIR], [encodingsdir], [encodings]) # zlib - -AC_CHECK_LIB(z, gzclose) +AC_CHECK_HEADER([zlib.h], [], + AC_MSG_FAILURE([zlib.h is required to compile libfontenc])) +AC_CHECK_LIB(z, gzclose, [], + AC_MSG_FAILURE([zlib is required to compile libfontenc])) # Check for dependencies PKG_CHECK_MODULES(FONTENC, xproto) -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected] Archive: http://lists.debian.org/[email protected]

