Custom Query (245 matches)

Filters
 
Or
 
  
 
Columns

Show under each result:


Results (19 - 21 of 245)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Ticket Resolution Summary Owner Reporter
#36 fixed emxbind: export truncation bug and allow export & imports up to 255 chars bird Yuri Dario
Description

Symbols longer than 127 bytes are truncated, code removed appear bad written code.

Index: src/emxbind/export.c
===================================================================
--- src/emxbind/export.c	(revision 2508)
+++ src/emxbind/export.c	(working copy)
@@ -75,10 +79,7 @@
   word ord16;
 
   name_len = strlen (name);
-  if (name_len >= 128)
-    name_len = 127;
-  else
-    blen = (byte)name_len;
+  blen = (byte)name_len;
   ord16 = (word)ord;
   put_grow (table, &blen, 1);
   put_grow (table, name, name_len);
Index: src/emxbind/fixup.c
===================================================================
--- src/emxbind/fixup.c	(revision 2508)
+++ src/emxbind/fixup.c	(working copy)
@@ -284,8 +284,6 @@
   byte blen;
 
   name_len = strlen (name);
-  if (name_len >= 128)
-    name_len = 127;
   i = 0;
   while (i < procs.len)
     {

#37 fixed export for symbols longer than 255 chars bird Yuri Dario
Description

emxbind cannot parse .def files with symbols longer than 255 chars. moddef.h is modified to allow symbols up to 1024 chars (got some 525 chars long). Since OS/2 cannot export symbols longer than 255 chars, the NONAME flag use is required, emxbind stops with fatal error if flag is not used.

Index: include/sys/moddef.h
===================================================================
--- include/sys/moddef.h	(revision 2508)
+++ include/sys/moddef.h	(working copy)
@@ -126,16 +126,16 @@
       } exetype;                  /* EXETYPE */
     struct
       {
-        char entryname[256];
-        char internalname[256];
+        char entryname[1024];
+        char internalname[1024];
         int ordinal;
         int pwords;
         unsigned flags;
       } export;                   /* EXPORTS */
     struct
       {
-        char entryname[256];
-        char internalname[256];
+        char entryname[1024];
+        char internalname[1024];
         char modulename[256];
         int ordinal;
         unsigned flags;
Index: src/emxbind/export.c
===================================================================
--- src/emxbind/export.c	(revision 2508)
+++ src/emxbind/export.c	(working copy)
@@ -43,6 +43,10 @@
 {
   int i;
 
+  if (strlen(exp->entryname)>254 
+      && !(exp->flags & _MDEP_NONAME))
+     error ("symbol %s too long, requires NONAME flag (EXPORTS)", exp->entryname);
+
   for (i = 0; i < export_len; ++i)
     {
       if (strcmp (exp->entryname, export_data[i].entryname) == 0)

#38 fixed libc: when debugged default to breakpoint on panic bird bird
Description

There is a DosSysCtl? function for detecting whether we're being debugged or not. Add that to os2emx.h and use it for setting the default value of the breakpoint indicator before parsing the VBOX_PANIC env.var.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Note: See TracQuery for help on using queries.