diff --git a/Makefile b/Makefile index d40ff02..e7af844 100644 --- a/Makefile +++ b/Makefile @@ -233,36 +233,36 @@ force: # FILES=Changelog COPYING README TODO qe.1 config.eg \ -Makefile qe.tcc qemacs.spec \ -hex.c charset.c qe.c qe.h tty.c \ -html.c indic.c unicode_join.c input.c qeconfig.h \ -qeend.c unihex.c arabic.c kmaptoqe.c util.c \ -bufed.c qestyles.h x11.c buffer.c ligtoqe.c \ -qfribidi.c clang.c latex-mode.c xml.c dired.c list.c qfribidi.h html2png.c \ -charsetmore.c charset_table.c cptoqe.c \ -libfbf.c fbfrender.c cfb.c fbftoqe.c libfbf.h fbfrender.h cfb.h \ -display.c display.h mpeg.c shell.c \ -docbook.c unifont.lig kmaps xterm-146-dw-patch \ -ligatures qe-doc.texi qe-doc.html \ -tests/HELLO.txt tests/TestPage.txt tests/test-hebrew \ -tests/test-capital-rtl tests/test-capital-rtl.ref \ -tests/testbidi.html \ -plugin-example/Makefile plugin-example/my_plugin.c \ -image.c video.c win32.c configure VERSION \ -cutils.c cutils.h unix.c + Makefile qe.tcc qemacs.spec \ + hex.c charset.c qe.c qe.h tty.c \ + html.c indic.c unicode_join.c input.c qeconfig.h \ + qeend.c unihex.c arabic.c kmaptoqe.c util.c \ + bufed.c qestyles.h x11.c buffer.c ligtoqe.c \ + qfribidi.c clang.c latex-mode.c xml.c dired.c list.c qfribidi.h html2png.c \ + charsetmore.c charset_table.c cptoqe.c \ + libfbf.c fbfrender.c cfb.c fbftoqe.c libfbf.h fbfrender.h cfb.h \ + display.c display.h mpeg.c shell.c \ + docbook.c unifont.lig kmaps xterm-146-dw-patch \ + ligatures qe-doc.texi qe-doc.html \ + tests/HELLO.txt tests/TestPage.txt tests/test-hebrew \ + tests/test-capital-rtl tests/test-capital-rtl.ref \ + tests/testbidi.html \ + plugin-example/Makefile plugin-example/my_plugin.c \ + image.c video.c win32.c configure VERSION \ + cutils.c cutils.h unix.c # qhtml library FILES+=libqhtml/Makefile libqhtml/css.c libqhtml/cssid.h \ -libqhtml/cssparse.c libqhtml/xmlparse.c libqhtml/htmlent.h \ -libqhtml/css.h libqhtml/csstoqe.c \ -libqhtml/docbook.css libqhtml/html.css + libqhtml/cssparse.c libqhtml/xmlparse.c libqhtml/htmlent.h \ + libqhtml/css.h libqhtml/csstoqe.c \ + libqhtml/docbook.css libqhtml/html.css # fonts FILES+=fonts/fixed10.fbf fonts/fixed12.fbf fonts/fixed13.fbf fonts/fixed14.fbf \ -fonts/helv10.fbf fonts/helv12.fbf fonts/helv14.fbf fonts/helv18.fbf \ -fonts/helv24.fbf fonts/helv8.fbf fonts/times10.fbf fonts/times12.fbf \ -fonts/times14.fbf fonts/times18.fbf fonts/times24.fbf fonts/times8.fbf \ -fonts/unifont.fbf + fonts/helv10.fbf fonts/helv12.fbf fonts/helv14.fbf fonts/helv18.fbf \ + fonts/helv24.fbf fonts/helv8.fbf fonts/times10.fbf fonts/times12.fbf \ + fonts/times14.fbf fonts/times18.fbf fonts/times24.fbf fonts/times8.fbf \ + fonts/unifont.fbf FILE=qemacs-$(VERSION) @@ -336,9 +336,9 @@ endif # fonts (only needed for html2png) # FONTS=fixed10.fbf fixed12.fbf fixed13.fbf fixed14.fbf\ -helv8.fbf helv10.fbf helv12.fbf helv14.fbf helv18.fbf helv24.fbf\ -times8.fbf times10.fbf times12.fbf times14.fbf times18.fbf times24.fbf\ -unifont.fbf + helv8.fbf helv10.fbf helv12.fbf helv14.fbf helv18.fbf helv24.fbf\ + times8.fbf times10.fbf times12.fbf times14.fbf times18.fbf times24.fbf\ + unifont.fbf FONTS:=$(addprefix fonts/,$(FONTS)) fbftoqe$(EXE): fbftoqe.o cutils.o @@ -366,4 +366,3 @@ test: # documentation qe-doc.html: qe-doc.texi texi2html -monolithic -number $< - diff --git a/TODO b/TODO index 84d3840..a0da09a 100644 --- a/TODO +++ b/TODO @@ -137,3 +137,5 @@ add colorized buffers using shell buffer method make shell buffer a colorized UCS2 buffer use colorized buffer for *trace* buffer to flag tty input, shell output, supported and unsupported escapes. + +.mailfilter should be in maildrop mode (a direct descendent of C mode) diff --git a/VERSION b/VERSION index 6ea4c99..39f3bf5 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.3.2dev +0.4.0dev diff --git a/dired.c b/dired.c index 4ca9caa..f0d57d4 100644 --- a/dired.c +++ b/dired.c @@ -175,7 +175,7 @@ static void dired_sort(EditState *s, const char *sort_order) const char *p; for (p = sort_order; *p; p++) { - switch (tolower(*p)) { + switch (tolower(*(const unsigned char *)p)) { case 'n': /* name */ hs->sort_mode &= ~DIRED_SORT_MASK; hs->sort_mode |= DIRED_SORT_NAME; diff --git a/libqhtml/xmlparse.c b/libqhtml/xmlparse.c index c3d2983..165e438 100644 --- a/libqhtml/xmlparse.c +++ b/libqhtml/xmlparse.c @@ -73,6 +73,7 @@ int find_entity(const char *str) const char *find_entity_str(int code) { const XMLEntity *e; + e = html_entities; for (;;) { if (!e->name) @@ -299,6 +300,7 @@ XMLState *xml_begin(CSSStyleSheet *style_sheet, int flags, static CSSAttribute *box_new_attr(CSSIdent attr_id, const char *value) { CSSAttribute *attr; + attr = malloc(sizeof(CSSAttribute) + strlen(value)); if (!attr) return NULL; @@ -325,6 +327,7 @@ static const char *css_attr_strlower(CSSBox *box, CSSIdent attr_id) { static char buf[200]; const char *value; + value = css_attr_str(box, attr_id); if (!value) return NULL; @@ -338,6 +341,7 @@ static int css_attr_int(CSSBox *box, CSSIdent attr_id, int def_val) { const char *str, *p; int val; + str = css_attr_str(box, attr_id); if (!str) return def_val; @@ -412,6 +416,7 @@ static void html_eval_tag(XMLState *s, CSSBox *box) first_prop = NULL; last_prop = &first_prop; + switch (box->tag) { case CSS_ID_img: parse_img: @@ -760,6 +765,7 @@ static void html_eval_tag(XMLState *s, CSSBox *box) value = css_attr_str(box, CSS_ID_style); if (value) { CSSParseState b1, *b = &b1; + b->ptr = NULL; b->line_num = s->line_num; /* XXX: slightly incorrect */ b->filename = s->filename; @@ -776,6 +782,7 @@ static void xml_error(XMLState *s, const char *fmt, ...) { char buf[1024]; va_list ap; + va_start(ap, fmt); vsnprintf(buf, sizeof(buf), fmt, ap); css_error(s->filename, s->line_num, buf); @@ -1038,8 +1045,9 @@ static void flush_text_buffer(XMLState *s, int offset0, int offset1) static int xml_tagcmp(const char *s1, const char *s2) { int d; + while (*s2) { - d = *s2 - tolower(*s1); + d = *(const unsigned char *)s2 - tolower(*(const unsigned char *)s1); if (d) return d; s2++; @@ -1297,4 +1305,3 @@ CSSBox *xml_parse_buffer(EditBuffer *b, int offset_start, int offset_end, } return box; } - diff --git a/qe.c b/qe.c index 6966534..f65adcd 100644 --- a/qe.c +++ b/qe.c @@ -6809,6 +6809,7 @@ static void show_version(void) { printf("QEmacs version " QE_VERSION "\n" "Copyright (c) 2000-2003 Fabrice Bellard\n" + "Copyright (c) 2000-2007 Charlie Gordon\n" "QEmacs comes with ABSOLUTELY NO WARRANTY.\n" "You may redistribute copies of QEmacs\n" "under the terms of the GNU Lesser General Public License.\n"); diff --git a/util.c b/util.c index 619311b..f064a4a 100644 --- a/util.c +++ b/util.c @@ -826,9 +826,10 @@ void css_union_rect(CSSRect *a, const CSSRect *b) void css_strtolower(char *buf, __unused__ int buf_size) { int c; + /* XXX: handle unicode */ while (*buf) { - c = tolower(*buf); + c = tolower(*(const unsigned char *)buf); *buf++ = c; } }