Mercurial > hg > xemacs-beta
annotate lwlib/lwlib-fonts.h @ 5916:1152e0091f8c
Avoid confusion about ELC vs. source file encoding, #'load, #'load-internal.
lisp/ChangeLog addition:
2015-06-03 Aidan Kehoe <kehoea@parhasard.net>
* code-files.el (load):
Revise this to respect load-ignore-out-of-date-elc-files, rather
than leaving that to #'load-internal. Avoids a corner case where
the source and the compiled file have different, incompatible
encodings.
Move the call to #'substitute-in-file-name here.
No longer check for a zero-length filename, since #'load-internal
no longer chokes on same and errors correctly.
src/ChangeLog addition:
2015-06-03 Aidan Kehoe <kehoea@parhasard.net>
* lread.c (Fload_internal):
Delegate calling the handler and #'substitute-in-file-name to #'load.
Error correctly with a zero-length file name, instead of giving a
bus error on my machine.
Delegate the check for out-of-date ELC files to #'load,
avoiding a bug where the encoding of the ELC file and the source
file differed.
* lread.c (PRINT_LOADING_MESSAGE_1):
This is simplified, now we no longer have to talk about
out-of-date ELC files.
tests/ChangeLog addition:
2015-06-03 Aidan Kehoe <kehoea@parhasard.net>
* automated/file-tests.el:
Gross sanity check for #'load and #'load-internal with a
zero-length FILE, something that crashed until today.
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Wed, 03 Jun 2015 20:13:07 +0100 |
parents | 308d34e9f07d |
children |
rev | line source |
---|---|
3094 | 1 /* Font data structures for X and Xft. |
2 | |
3 Copyright (C) 2004 Free Software Foundation, Inc. | |
4 | |
5 Author: Stephen J. Turnbull <stephen@xemacs.org> | |
6 Created: 24 Jul 2004 by Stephen J. Turnbull | |
7 | |
8 This file is part of XEmacs. | |
9 | |
5402
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
4916
diff
changeset
|
10 XEmacs is free software: you can redistribute it and/or modify it |
3094 | 11 under the terms of the GNU General Public License as published by the |
5402
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
4916
diff
changeset
|
12 Free Software Foundation, either version 3 of the License, or (at your |
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
4916
diff
changeset
|
13 option) any later version. |
3094 | 14 |
15 XEmacs is distributed in the hope that it will be useful, but WITHOUT | |
16 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
17 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | |
18 for more details. | |
19 | |
20 You should have received a copy of the GNU General Public License | |
5402
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
4916
diff
changeset
|
21 along with XEmacs. If not, see <http://www.gnu.org/licenses/>. */ |
3094 | 22 |
23 /* Synched up with: Not in GNU Emacs. */ | |
24 | |
25 #ifndef INCLUDED_lwlib_fonts_h_ | |
26 #define INCLUDED_lwlib_fonts_h_ | |
27 | |
28 /* get headers */ | |
29 | |
4916
a6c778975d7d
split USE_XFT into HAVE_XFT/USE_XFT
Ben Wing <ben@xemacs.org>
parents:
3397
diff
changeset
|
30 #ifdef HAVE_XFT |
3094 | 31 #define _XFT_NO_COMPAT_ |
32 /* shut up GCC */ | |
33 #define face_index face_index_arg | |
34 #define glyph_index glyph_index_arg | |
35 #include <X11/Xft/Xft.h> | |
36 #undef glyph_index | |
37 #undef face_index | |
38 | |
39 #if XFT_MAJOR < 2 | |
40 #error Xft versions < 2 not supported | |
41 #endif | |
4916
a6c778975d7d
split USE_XFT into HAVE_XFT/USE_XFT
Ben Wing <ben@xemacs.org>
parents:
3397
diff
changeset
|
42 #endif /* HAVE_XFT */ |
3094 | 43 |
44 /* Xt name macros */ | |
45 | |
4916
a6c778975d7d
split USE_XFT into HAVE_XFT/USE_XFT
Ben Wing <ben@xemacs.org>
parents:
3397
diff
changeset
|
46 #ifdef HAVE_XFT |
3094 | 47 #ifndef XtNxftFont |
48 #define XtNxftFont "xftFont" | |
3397 | 49 #define XtCXftFont "XftFont" |
3094 | 50 #endif |
3397 | 51 #ifndef XtNfcFont |
52 #define XtNfcFontName "fcFontName" | |
53 #define XtCFcFontName "FcFontName" | |
3094 | 54 #endif |
4916
a6c778975d7d
split USE_XFT into HAVE_XFT/USE_XFT
Ben Wing <ben@xemacs.org>
parents:
3397
diff
changeset
|
55 #endif /* HAVE_XFT */ |
3094 | 56 |
57 /* code 'n' stuff */ | |
58 | |
4916
a6c778975d7d
split USE_XFT into HAVE_XFT/USE_XFT
Ben Wing <ben@xemacs.org>
parents:
3397
diff
changeset
|
59 #ifdef HAVE_XFT |
3094 | 60 #define FCSTRLEN 512 |
61 | |
62 /* non-Lisp prototypes */ | |
63 /* #### change this back to _open_name */ | |
64 XftFont *xft_open_font_by_name (Display *dpy, char *name); | |
4916
a6c778975d7d
split USE_XFT into HAVE_XFT/USE_XFT
Ben Wing <ben@xemacs.org>
parents:
3397
diff
changeset
|
65 #endif /* HAVE_XFT */ |
3094 | 66 |
67 #endif /* INCLUDED_lwlib_fonts_h_ */ |