Ilya, Sorry, my fault. I was confused by the line 41. With best regards, Alexei Fedotov, Intel Java & XML Engineering >-----Original Message----- >From: Ilya Okomin [mailto:[EMAIL PROTECTED] >Sent: Friday, October 20, 2006 11:07 AM >To: harmony-dev@incubator.apache.org >Subject: Re: HARMONY-1752: patch review > >On 10/19/06, Fedotov, Alexei A <[EMAIL PROTECTED]> wrote: >> >> Ilya, >> Shouldn't we change OSNetworkSystemLinux.c as well? > > >Alexei, I'm watching at the latest sources from the svn and I'm not sure we >need make changes to OSNetworkSystemLinux.c. The problem was in freeing >uninitialized fdset_read pointer. In the OSNetworkSystemWin32.c initial >value was undefined and in the OSNetworkSystemLinux.c it is set to NULL. >Thus linux native looks fine for me. > >Thanks, Ilya. > >With best regards, >> Alexei Fedotov, >> Intel Java & XML Engineering >> >-----Original Message----- >> >From: Andrew Zhang [mailto:[EMAIL PROTECTED] >> >Sent: Thursday, October 19, 2006 2:05 PM >> >To: harmony-dev@incubator.apache.org >> >Subject: Re: HARMONY-1752: patch review >> > >> >On 10/19/06, Ilya Okomin <[EMAIL PROTECTED]> wrote: >> >> >> >> On 10/19/06, Andrew Zhang <[EMAIL PROTECTED]> wrote: >> >> >> >> > On 10/19/06, Fedotov, Alexei A <[EMAIL PROTECTED]> wrote: >> >> > > >> >> > > Hello Ilya, >> >> > > >> >> > > >> >> > > >> >> > > I really like your patch from >> >> > > http://issues.apache.org/jira/browse/HARMONY-1752. Let me >> participate >> >> in >> >> > > a way I'm able to. >> >> > > >> >> > > >> >> > > >> >> > > I cannot say why calling free(send_buf) when send_buf == NULL >> makes >> >me >> >> > > feel a bit uncomfortable. >> >> > >> >> > >> >> > It's safe to free NULL pointer. >> >> > >> >> > I also prefer a descriptive name for a label >> >> > > cleanup1 (eg cleanup_buf). >> >> >> >> >> >> Alexei, you are right. I was thinking about 'cleanup_all' but for >> some >> >> inexplicable reasons forgot to rename it :) >> >> >> >> >> >> >> >> > > >> >> > > >> >> > > >> >> > > I tried to track that guy who used cleanup labels in his C code. >> >> > >> >> > >> >> > Let the author speak for himself, but I think it's ok. It's a >> >> frequentely >> >> > used error handling sytle in C programming. There's a logical >> problem >> >in >> >> > OSNetworkSystemWin32.c, the cleanup may free an invalid pointer >> >> > fdset_read. >> >> > But I perfer to add NULL initiliazation when declaring fdset_read, >> say, >> >> > fd_set * fdset_read = NULL; >> >> > >> >> > comments? >> >> >> >> >> >> Thanks, Andrew, IMO it is more convenient way that I've suggested. >> The >> >> problem was really that existed code was trying to free fdset_read, >> that >> >> wasn't NULL (we went to the 'cleanup' label before fdset_read >> >> initialization). >> >> I'll update patch for H-1752. >> > >> > >> >The updated patch looks fine. :) >> > >> >Regards, Ilya. >> >> >> >> >> >> >> >> > modules/luni/src/main/native/luni/linux/OSNetworkSystemLinux.c: >> >> > > >> >> > > The Linux version seems to contain exactly the same problem as >> you >> >fix >> >> > > in >> modules/luni/src/main/native/luni/windows/OSNetworkSystemWin32.c >> >> > > >> >> > > >> >> > > >> >> > > modules/luni/src/main/native/luni/shared/luniglob.c >> >> > > >> >> > > cleanup: >> >> > > >> >> > > if (props) { >> >> > > >> >> > > properties_free(PORTLIB, props); >> >> > > >> >> > > } >> >> > > >> >> > > if (bootDirectory) { >> >> > > >> >> > > hymem_free_memory(bootDirectory); >> >> > > >> >> > > } >> >> > > >> >> > > The first "if" always fails if we come here using goto - we can >> put >> >> the >> >> > > label after the first if. I suggest replacing the second if with >> >> > > assert(!bootDirectory) >> >> > > >> >> > > >> >> > > >> >> > > modules/archive/src/main/native/archive/shared/jarfile.c: >> >> > > >> >> > > zip_freeZipEntry is not called on some paths - is it a memory >> leak? >> >> > > >> >> > > >> >> > > >> >> > > modules/luni/src/main/native/launcher/shared/main.c >> >> > > >> >> > > if (vm_args.options) >> >> > > >> >> > > { >> >> > > >> >> > > hymem_free_memory (vm_args.options); >> >> > > >> >> > > } >> >> > > >> >> > > Should we put here assert(!vm_args.options)? >> >> > > >> >> > > >> >> > > >> >> > > >> >> > > >> >> > > With best regards, >> >> > > Alexei Fedotov, >> >> > > Intel Java & XML Engineering >> >> > > >> >> > > >> >> > > >> >> > > >> >> > > >> >> > >> >> > >> >> > -- >> >> > Best regards, >> >> > Andrew Zhang >> >> > >> >> > >> >> >> >> >> >> -- >> >> -- >> >> Ilya Okomin >> >> Intel Middleware Products Division >> >> >> >> >> > >> > >> >-- >> >Best regards, >> >Andrew Zhang >> >> --------------------------------------------------------------------- >> Terms of use : http://incubator.apache.org/harmony/mailing.html >> To unsubscribe, e-mail: [EMAIL PROTECTED] >> For additional commands, e-mail: [EMAIL PROTECTED] >> >> > > >-- >-- >Ilya Okomin >Intel Middleware Products Division
--------------------------------------------------------------------- Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]