+1999-02-15 Gary V. Vaughan <gvaughan@oranda.demon.co.uk>
+
+ * demo/dlmain.c (_WIN32): The lt_symlist structure is now const,
+ so my original horrible temporary win32 hack no longer worked.
+ Here is a new horrible temporary hack to prevent helldl from SEGVing
+ on win32. I will fix this properly when we figure out how to do
+ data exports from dlls.
+
1999-02-13 Thomas Tanner <tanner@gmx.de>
* syncronized with HEAD
extern const struct lt_symlist lt_preloaded_symbols[];
-#ifdef __CYGWIN32__
-int
-win32_force_data_import_address __P((void))
-{
- const struct lt_symlist *s;
-
- s = lt_preloaded_symbols;
- while (s->name)
- {
- if (!strcmp ("nothing", s->name))
- s->address = ¬hing;
- s++;
- }
-
- return 0;
-}
-#endif
-
-
int
main (argc, argv)
int argc;
printf ("Welcome to *modular* GNU Hell!\n");
-#ifdef __CYGWIN32__
- /* runtime table initialisation */
- (void) win32_force_data_import_address();
-#endif
-
/* Look up the symbols we require for this demonstration. */
s = lt_preloaded_symbols;
while (s->name)
else if (!strcmp ("foo", name))
pfoo = (int(*)())s->address;
else if (!strcmp ("nothing", name))
+#ifndef _WIN32
+ /* In an ideal world we could do this... */
pnothing = (int*)s->address;
+#else /* !_WIN32 */
+ /* In an ideal world a shared lib would be able to export data */
+ pnothing = (int*)¬hing;
+#endif
+
} else
printf ("found file: %s\n", s->name);
s ++;