view src/unexsol.c @ 95176:686d116f748d

Checking of FONT_DEBUG is moved to font.h. All calls of xassert are changed to font_assert. Many unused variables deleted. (Vfont_weight_table, Vfont_slant_table, Vfont_width_table): New variables. (struct table_entry): Moved from xfaces.c and modified. (weight_table, slant_table, width_table): Moved from xfaces.c and contents adjusted for the change of struct table_entry. (font_style_to_value, font_style_symbolic): Adjuted for the format change of font_style_table. (font_parse_family_registry): Don't overwrite existing foundry and family of font_spec. (font_score): Fix calculation of diff for sizes. (font_sort_entites): Call font_add_log. (font_delete_unmatched): Return a newly created list. (font_list_entities): Fix previous change. Call font_add_log. (font_matching_entity, font_open_entity, font_close_entity): Call font_add_log. (Ffont_xlfd_name): New arg FOLD-WILDCARDS. (Finternal_set_font_style_table): Deleted. (BUILD_STYLE_TABLE): New macro. (build_style_table): New function. (Vfont_log, font_log_env_checked): New variables. (font_add_log): New function. (syms_of_font): Delete defsubr Sinternal_set_font_style_table. Declare Lisp variables "font-weight-table", "font-slant-table", "font-width-table", and "font-log". Initialize font_style_table.
author Kenichi Handa <handa@m17n.org>
date Thu, 22 May 2008 02:19:21 +0000
parents b7bf941f8049
children 8a8e69664178 68dd71358159
line wrap: on
line source

/* Trivial unexec for Solaris.  */

#include <config.h>
#include <stdlib.h>
#include <dlfcn.h>

#include "lisp.h"
#include "buffer.h"
#include "charset.h"
#include "coding.h"

int
unexec (char *new_name, char *old_name, unsigned int data_start,
        unsigned int bss_start, unsigned int entry_address)
{
  Lisp_Object data;
  Lisp_Object errstring;

  if (! dldump (0, new_name, RTLD_MEMORY))
    return 0;

  data = Fcons (build_string (new_name), Qnil);
  synchronize_system_messages_locale ();
  errstring = code_convert_string_norecord (build_string (dlerror ()),
					    Vlocale_coding_system, 0);

  xsignal (Qfile_error,
	   Fcons (build_string ("Cannot unexec"), Fcons (errstring, data)));
}

/* arch-tag: d8ff72b3-8198-4011-8ef5-011b12027f59
   (do not change this comment) */