Changeset 2272 for trunk


Ignore:
Timestamp:
Jul 24, 2005, 10:57:13 AM (20 years ago)
Author:
bird
Message:

o Fixed bad done string allocation.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/emx/src/emximp/emximp.c

    • Property cvs2svn:cvs-rev changed from 1.15 to 1.16
    r2271 r2272  
    773773    dword *ptr_hmod_fixup, *ptr_name_fixup;
    774774    const char *p;
     775    int len;
    775776    static char *done = NULL;
    776     if (done)
    777       {
    778         if (strstr (done, resolver_sym))
    779           return;
    780         done = xrealloc (done, strlen (resolver_sym) + 1);
    781         strcat (done, resolver_sym);
    782       }
    783     else
    784       done = xstrdup (resolver_sym);
     777    static size_t done_len = 0;
     778    if (done && strstr (done, resolver_sym))
     779      return;
     780    len = strlen (resolver_sym);
     781    done = xrealloc (done, done_len + len + 2);
     782    memcpy (done + done_len, resolver_sym, len);
     783    len += done_len;
     784    memcpy (done + len, "\b", 2);
     785    done_len = len + 1;
    785786
    786787    /* Write module resolver object
Note: See TracChangeset for help on using the changeset viewer.