--- ./playercode/mloader.c.sprintf 2007-01-10 22:50:01.159844655 +0200 +++ ./playercode/mloader.c 2007-01-10 23:00:11.038599663 +0200 @@ -67,10 +67,15 @@ if(len) if((list=_mm_malloc(len*sizeof(CHAR)))) { + CHAR * list_end = list; list[0]=0; /* list all registered module loders */ for(l=firstloader;l;l=l->next) - sprintf(list,(l->next)?"%s%s\n":"%s%s",list,l->version); + { + list_end += sprintf(list_end, + (l->next)?"%s\n":"%s",l->version + ); + } } MUTEX_UNLOCK(lists); return list; --- ./playercode/mdriver.c.sprintf 2007-01-10 22:53:48.940825152 +0200 +++ ./playercode/mdriver.c 2007-01-10 23:01:25.834862061 +0200 @@ -185,11 +185,16 @@ if(len) if((list=_mm_malloc(len*sizeof(CHAR)))) { + CHAR * list_end = list; list[0]=0; /* list all registered device drivers : */ for(t=1,l=firstdriver;l;l=l->next,t++) - sprintf(list,(l->next)?"%s%2d %s\n":"%s%2d %s", - list,t,l->Version); + { + list_end += sprintf(list_end, + "%2d %s%s", + t,l->Version, (l->next)?"\n":"" + ); + } } MUTEX_UNLOCK(lists); return list;