From ripley at stats.ox.ac.uk  Sat Jan  3 10:58:49 2009
From: ripley at stats.ox.ac.uk (Prof Brian Ripley)
Date: Sat, 3 Jan 2009 09:58:49 +0000 (GMT)
Subject: [Rd] (PR#13424) Missing PROTECT in intern_getwd (in util.c)
In-Reply-To: <20090103092508.643B5282EFF6@mail.pubhealth.ku.dk>
References: <20090103092508.643B5282EFF6@mail.pubhealth.ku.dk>
Message-ID: <alpine.LFD.2.00.0901030957120.21928@auk.stats.ox.ac.uk>

On Sat, 3 Jan 2009, milbo at sonic.net wrote:

> Full_Name: Stephen Milborrow
> Version: 2.8.1
> OS: WinXP
> Submission from: (NULL) (198.54.202.150)
>
>
> There is a missing PROTECT in intern_getwd in util.c. The current code is
>
>  rval = allocVector(STRSXP, 1);
>  SET_STRING_ELT(rval, 0, mkCharCE(buf, CE_UTF8));
>
> and should be (because mkCharCE can allocate memory)
>
>  PROTECT(rval = allocVector(STRSXP, 1));
>  SET_STRING_ELT(rval, 0, mkCharCE(buf, CE_UTF8));
>  UNPROTECT(1);
>
> This was seen in R version 2.8.1 mingw32

And it is code specific to that platform (although you did not say so).

Fixed now in R-patched, thank you.

-- 
Brian D. Ripley,                  ripley at stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595



[Rd] (PR#13424) Missing PROTECT in intern_getwd (in util.c)
Prof Brian Ripley