Il giorno sab, 02/06/2012 alle 00.43 +0200, Nicola Manca ha scritto: [...] > >> *** glibc detected *** c:\program > >> files\steam\steamapps\common\skyrim\TESV.exe: malloc(): memory corruption: > >> 0xf40f2850 *** [...] > Non capisco cosa intendi con "non veniva segnalato", prima i programmi > giravano (e lo fanno tuttora su stable) mentre adesso no, quindi direi > che il bug è delle glibc, non di wine, anche perchè il problema si ha > con varie versioni di wine e non si presenta su altre distro > "aggiornate" come ubuntu 12.04.
La libc ha una funzione chiamata malloc() che serve a dare memoria alle applicazioni. L'applicazione (winex11.drv) chiede per esempio 1024 byte e la libc li chiede al kernel e poi li restituisce all'applicazione. Succede che alcune applicazione sbaglino a usare quella memoria e scrivano magari 1025 byte anziché 1024. Allora la nuova libc, quando chiedi 1024 byte ne chiede al kernel di più, poi scrive dei valori particolari nella parte oltre i 1024, e poi, quando il programma termina l'utilizzo della memoria e restituisce la memoria alla libc, la libc controlla se nei byte successivi c'è sempre quello che ci aveva scritto prima. Se non vi trova quello che c'era scritto, adesso riporta quel messaggio. Quindi la libc aiuta a rilevare bug nelle applicazioni. Non si tratta di un bug della libc, ma dell'applicazione. Ciao, Giuseppe -- Per REVOCARE l'iscrizione alla lista, inviare un email a [email protected] con oggetto "unsubscribe". Per problemi inviare un email in INGLESE a [email protected] To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected] Archive: http://lists.debian.org/1338627264.7334.54.camel@scarafaggio

