Skip to content

Missing PROTECT in intern_getwd (in util.c) (PR#13424)

2 messages · milbo at sonic.net, Brian Ripley

#
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
#
On Sat, 3 Jan 2009, milbo at sonic.net wrote:

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

Fixed now in R-patched, thank you.