[#444] io_write()/fwrite() and EINTR on Solaris — Jos Backus <jos@...>

I am encountering a problem similar to the one mentioned here,

19 messages 2002/09/06
[#453] Re: io_write()/fwrite() and EINTR on Solaris — nobu.nokada@... 2002/09/08

Hi,

[#454] Re: io_write()/fwrite() and EINTR on Solaris — matz@... (Yukihiro Matsumoto) 2002/09/09

Hi

[#469] Re: io_write()/fwrite() and EINTR on Solaris — Jos Backus <jos@...> 2002/09/09

On Mon, Sep 09, 2002 at 03:55:13PM +0900, Yukihiro Matsumoto wrote:

[#479] Re: io_write()/fwrite() and EINTR on Solaris — Jos Backus <jos@...> 2002/09/10

On Tue, Sep 10, 2002 at 01:04:10AM +0900, Jos Backus wrote:

[#492] Re: io_write()/fwrite() and EINTR on Solaris — Jos Backus <jos@...> 2002/09/21

On Wed, Sep 11, 2002 at 02:23:33AM +0900, Jos Backus wrote:

Re: [MemLeak] in dln.c

From: nobu.nokada@...
Date: 2002-09-03 02:04:50 UTC
List: ruby-core #407
Hi,

At Tue, 3 Sep 2002 01:09:11 +0900,
Michal Rokos wrote:
> > I'd use alloca.  I want dln.c to be separatable from Ruby as much as
> > possible.
> 
> 	So, #2 is a winner.
> 
> 	(Only think that worries me is 'man alloca': The alloca function
> 	is machine and compiler dependent. Its use is discouraged.)

Ruby uses missing/alloca.c for such platforms, however I've
inclined to #1, which uses alloca() in just two places.  Still
ASTRDUP() macro feels evil, so explicit copy may be better.

And, you just elided this?

@@ -647,7 +647,10 @@ load_1(fd, disp, need_init)
     reloc = load_reloc(fd, &hdr, disp);
     if (reloc == NULL) return -1;
     syms = load_sym(fd, &hdr, disp);
-    if (syms == NULL) return -1;
+    if (syms == NULL) {
+	free(reloc);
+	return -1;
+    }
 
     sym = syms;
     end = syms + (hdr.a_syms / sizeof(struct nlist));

-- 
Nobu Nakada

In This Thread