The R Project SVN R

Rev

Go to most recent revision | Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
63181 4772 d 18 h ripley /trunk/src/ micro-manage R_alloc stack  
60800 5055 d 16 h ripley /trunk/src/ message has changed  
60799 5055 d 20 h ripley /trunk/src/ more use of ngettext  
59039 5218 d 2 h ripley /trunk/ use preferred form of 'R Core Team'  
51264 5982 d 3 h ripley /trunk/src/main/ clean up layout  
51259 5982 d 20 h ripley /trunk/ use standard matching for attr, on.exit and substitute  
51232 5985 d 15 h falcon /trunk/src/main/ Fix bug in matchArgs triggered by gc and finalizers

matchArgs was modifying the general purpose bits of SEXPs making up the
'formals' argument to keep track of ARGUSED. When gc is triggered
inside matchArgs, finalizer code can end up calling matchArgs on the
same function (hence same formals) resulting in corruption of gp bits.

This patch uses an int array allocated on the stack to keep track of
ARGUSED and avoids modifying the SEXPs in formals. In place modification
of SEXPs in supplied still occurs via ARGUSED/SET_ARGUSED, but should be
safe as long as no new allocating function calls are added to matchArgs.

A reproducible report of this bug was reported here:
https://stat.ethz.ch/pipermail/bioc-sig-sequencing/2010-March/000997.html
 
48789 6251 d 18 h luke /trunk/ Constructing error messages about unused arguments in calls to
closures no longer evaluates the arguments.
 
48029 6359 d 18 h rgentlem /trunk/src/main/ fixed an inefficiency in pmatch that speeds it up about 30% - how well
that moves up the chain is not so clear; thanks to H. Pages for pointing
this out
 
47460 6415 d 3 h ripley /trunk/src/main/ code cleanup
SET_STRING_ELT should not set R_NilValue, but it does in subscript.c
 
45667 6653 d 0 h ripley /trunk/src/main/ remove old comments on i18n if no longer relevant  
45446 6672 d 0 h ripley /trunk/src/main/ whitespace cleanup  
44091 6763 d 0 h ripley /trunk/src/ Use UTF-8 in collation, basename, dirname, Tcl/Tk strings
(not yet checked on Linux)
 
42307 6944 d 3 h ripley /trunk/src/ change reference to GPL  
41807 6994 d 21 h rgentlem /trunk/ patches from Seth F for the CHARSXP hashing changes
Seth says:
const char fixes

CHAR() internal macro now returns (const char *)

Add CHAR_RW: writable CHARSXP access for internal R use only

const char fixes for methods package

Add NEWS item and some doc to R-ext for CHARSXP changes
 
41784 6997 d 3 h ripley /trunk/src/ more 'const char *'  
41781 6997 d 16 h ripley /trunk/src/ start introducing const char *  
41613 7012 d 2 h ripley /trunk/ add arguments to warn on partial matching  
40705 7106 d 5 h ripley /trunk/ bugfix in duplicate on CHARSXPs
more use of translateChar
 
39071 7269 d 7 h ripley /trunk/ improvements to arg matching on closures.  

Show All