Mercurial > hg > xemacs-beta
annotate netinstall/state.h @ 4745:0c54de4c4b9d
Resolve the unregistered-CCL-programs-get-garbage-collected problem correctly
src/ChangeLog addition:
2009-11-15 Aidan Kehoe <kehoea@parhasard.net>
* mule-ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Assert that we always
have a symbol in this macro.
(setup_ccl_program): Ensure we're not allocating unreachable
memory in this function; all symbols must have been resolved in a
given CCL program before this function is called.
(find_ccl_program): New function, return a CCL program with all
its symbols resolved if it is valid (possibly allocating memory),
Qnil otherwise.
(get_ccl_program): New function, exported to other files; call
find_ccl_program, and error if it gives nil.
(Fccl_program_p): Call find_ccl_program from this function instead
of implementing the bulk of it here.
(Fccl_execute): Call get_ccl_program instead of implementing the
bulk of it here.
(Fccl_execute_on_string): Ditto.
* mule-ccl.h (Vfont_ccl_encoder_alist): Remove this declaration,
it hasn't been used in years.
(get_ccl_program): Declare this function.
* mule-coding.c (ccl_putprop): Use get_ccl_program on any
specified encode or decode CCL program property.
(fixed_width_putprop): Ditto.
* mule-charset.c (Fmake_charset): Use get_ccl_program on any
specified ccl-program.
(Fset_charset_ccl_program): Ditto.
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Sun, 15 Nov 2009 16:53:14 +0000 |
parents | 42a8626b741e |
children |
rev | line source |
---|---|
448 | 1 /* |
2 * Copyright (c) 2000, Red Hat, Inc. | |
3 * | |
4 * This program is free software; you can redistribute it and/or modify | |
5 * it under the terms of the GNU General Public License as published by | |
6 * the Free Software Foundation; either version 2 of the License, or | |
7 * (at your option) any later version. | |
8 * | |
9 * A copy of the GNU General Public License can be found at | |
10 * http://www.gnu.org/ | |
11 * | |
12 * Written by DJ Delorie <dj@cygnus.com> | |
13 * | |
14 */ | |
15 | |
16 /* The purpose of this file is to contain all the global variables | |
17 that define the "state" of the install, that is, all the | |
18 information that the user has provided so far. These are set by | |
19 the various dialogs and used by the various actions. */ | |
20 | |
21 extern int source; | |
22 | |
23 extern char * local_dir; | |
24 | |
25 extern char * root_dir; | |
26 extern int root_dir_default; | |
27 extern int install_type; | |
28 extern int root_scope; | |
29 extern int root_menu; | |
30 extern int root_desktop; | |
31 | |
657 | 32 extern int reg_c; |
33 extern int reg_cpp; | |
34 extern int reg_java; | |
35 extern int reg_elisp; | |
36 extern int reg_txt; | |
672 | 37 extern int reg_idl; |
657 | 38 |
448 | 39 extern int net_method; |
40 extern char * net_proxy_host; | |
41 extern int net_proxy_port; | |
42 | |
43 extern char * net_user; | |
44 extern char * net_passwd; | |
45 extern char * net_proxy_user; | |
46 extern char * net_proxy_passwd; | |
47 | |
48 extern char * mirror_site; | |
49 extern char * other_url; | |
50 | |
51 extern int trust_level; | |
657 | 52 extern int uninstall; |
448 | 53 |
54 #define MIRROR_SITE (mirror_site ? mirror_site : other_url) |