The R Project SVN R

Rev

Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
52864 5807 d 6 h urbaneks /branches/R-exp-R5/ Experinental branch implementing "R5" ideas - extending S language to
create a more intuitive object system
 
51264 5980 d 13 h ripley /trunk/src/main/ clean up layout  
51259 5981 d 6 h ripley /trunk/ use standard matching for attr, on.exit and substitute  
51232 5984 d 0 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 6250 d 4 h luke /trunk/ Constructing error messages about unused arguments in calls to
closures no longer evaluates the arguments.
 
48029 6358 d 4 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 6413 d 13 h ripley /trunk/src/main/ code cleanup
SET_STRING_ELT should not set R_NilValue, but it does in subscript.c
 
45667 6651 d 10 h ripley /trunk/src/main/ remove old comments on i18n if no longer relevant  
45446 6670 d 10 h ripley /trunk/src/main/ whitespace cleanup  
44091 6761 d 10 h ripley /trunk/src/ Use UTF-8 in collation, basename, dirname, Tcl/Tk strings
(not yet checked on Linux)
 
42307 6942 d 13 h ripley /trunk/src/ change reference to GPL  
41807 6993 d 7 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 6995 d 13 h ripley /trunk/src/ more 'const char *'  
41781 6996 d 2 h ripley /trunk/src/ start introducing const char *  
41613 7010 d 12 h ripley /trunk/ add arguments to warn on partial matching  
40705 7104 d 15 h ripley /trunk/ bugfix in duplicate on CHARSXPs
more use of translateChar
 
39071 7267 d 17 h ripley /trunk/ improvements to arg matching on closures.  
38662 7312 d 12 h ripley /trunk/src/ more tidying up of what is exported  
36820 7524 d 6 h ripley /trunk/ update FSF address  
35796 7598 d 4 h ripley /trunk/ <NA> in character indexing was matching "NA"  

Show All