diff src/emodules.c @ 5420:b9167d522a9a

Rebase with 21.5 trunk.
author Mats Lidell <matsl@xemacs.org>
date Thu, 28 Oct 2010 23:53:24 +0200
parents 308d34e9f07d 63f247c5da0a
children 56144c8593a8
line wrap: on
line diff
--- a/src/emodules.c	Wed Oct 27 23:36:14 2010 +0200
+++ b/src/emodules.c	Thu Oct 28 23:53:24 2010 +0200
@@ -388,11 +388,7 @@
 				       (const Ibyte *) "emodule_name");
   if (f == NULL || *f == NULL)
     signal_error (Qdll_error, "Invalid dynamic module: Missing symbol `emodule_name'", Qunbound);
-
-  mname = EXTERNAL_TO_ITEXT (f, Qemodule_string_encoding);
-  /* #### Not obvious we have to force an alloca copy here, but the old
-     code did so */
-  IBYTE_STRING_TO_ALLOCA (mname, mname);
+  mname = EXTERNAL_TO_ITEXT (*f, Qemodule_string_encoding);
 
   if (mname[0] == '\0')
     signal_error (Qdll_error, "Invalid dynamic module: Empty value for `emodule_name'", Qunbound);
@@ -401,21 +397,13 @@
 				       (const Ibyte *) "emodule_version");
   if (f == NULL || *f == NULL)
     signal_error (Qdll_error, "Missing symbol `emodule_version': Invalid dynamic module", Qunbound);
-
-  mver = EXTERNAL_TO_ITEXT (f, Qemodule_string_encoding);
-  /* #### Not obvious we have to force an alloca copy here, but the old
-     code did so */
-  IBYTE_STRING_TO_ALLOCA (mver, mver);
+  mver = EXTERNAL_TO_ITEXT (*f, Qemodule_string_encoding);
 
   f = (const Extbyte **) dll_variable (dlhandle,
 				       (const Ibyte *) "emodule_title");
   if (f == NULL || *f == NULL)
     signal_error (Qdll_error, "Invalid dynamic module: Missing symbol `emodule_title'", Qunbound);
-
-  mtitle = EXTERNAL_TO_ITEXT (f, Qemodule_string_encoding);
-  /* #### Not obvious we have to force an alloca copy here, but the old
-     code did so */
-  IBYTE_STRING_TO_ALLOCA (mtitle, mtitle);
+  mtitle = EXTERNAL_TO_ITEXT (*f, Qemodule_string_encoding);
 
   symname = alloca_ibytes (qxestrlen (mname) + 15);