Nп/п : 34 из 100
 От   : Theo                                2:5075/128        15 сен 23 14:23:49
 К    : The Natural Philosopher                               15 сен 23 16:27:02
 Тема : Re: Weird code crash
----------------------------------------------------------------------------------
                                                                                 
@MSGID: 5Arqz@news.chiark.greenend.org.uk>
8f646d19
@REPLY: 2@dont-email.me> 1042da04
@REPLYADDR Theo
<theom+news@chiark.greenend.org.uk>
@REPLYTO 2:5075/128 Theo
@CHRS: CP866 2
@RFC: 1 0
@RFC-Message-ID:
5Arqz@news.chiark.greenend.org.uk>
@RFC-References: 1@dont-email.me>
<ygamsxoixhx.fsf@akutech.de> 4@dont-email.me> <ygail8biyxm.fsf@akutech.de>
1@dont-email.me> <ygaedizitb9.fsf@akutech.de> 2@dont-email.me>
@TZUTC: 0100
@PID: tin/1.8.3-20070201 ("Scotasay") (UNIX)
(Linux/5.10.0-22-amd64 (x86_64))
@TID: FIDOGATE-5.12-ge4e8b94
In comp.sys.raspberry-pi The Natural Philosopher <tnp@invalid.invalid> wrote:
> On 15/09/2023 12:12, Ralf Fassel wrote:
> > |                             {
> > |                             *q++=0;
> > |                             thermometers[i].name=strdup(p); //
> > |                             make a copy of the name and attach it
> > |                             to our thermometer structure
> > 
> > Memory leak if thermometers[i].name already contains something.
> > 
> further up the line...

>         bzero(filbuf,sizeof(filbuf));
>         /** first thing to do is clean any allocated memory used to store 
> values. **/
>         for(i=0;i >                 free(thermometers[i].name);

You could get a SIGABRT if you were trying to free something that was
already freed.  Are you sure those are interlocked such that for each i you
call strdup() exactly once, and subsequently free() exactly once?  If there
was some code path that was breaking out of the loop or similar you might
get such behaviour.

Theo
--- tin/1.8.3-20070201 ("Scotasay") (UNIX) (Linux/5.10.0-22-amd64 (x86_64))
 * Origin: University of Cambridge, England (2:5075/128)
SEEN-BY: 5001/100 5005/49 5015/255 5019/40 5020/715
848 1042 4441 12000
SEEN-BY: 5030/49 1081 5058/104 5075/128
@PATH: 5075/128 5020/1042 4441



   GoldED+ VK   │                                                 │   09:55:30    
                                                                                
В этой области больше нет сообщений.

Остаться здесь
Перейти к списку сообщений
Перейти к списку эх