[Rd] Package (PR#13475)

Duncan Murdoch murdoch at stats.uwo.ca
Tue Jan 27 21:59:13 CET 2009


On 1/27/2009 2:02 PM, William Dunlap wrote:
> You can put a trace on normalizePath to get the name of the offending
> input file name.  E.g.,
> 
>    > trace(normalizePath, Quote(cat("normalizePath: path=", path,
> "\n")))
>    Tracing function "normalizePath" in package "utils"
>    [1] "normalizePath"
>    > install.packages("sn")
>    trying URL
> 'http://cran.fhcrc.org/bin/windows/contrib/2.8/sn_0.4-10.zip'
>    Content type 'application/zip' length 320643 bytes (313 Kb)
>    opened URL
>    downloaded 313 Kb
> 
>    Tracing normalizePath(lib) on entry 
>    normalizePath: path= E:/PROGRA~1/R/R-28~1.1/library 
>    package 'sn' successfully unpacked and MD5 sums checked
>    Tracing normalizePath(tmpd) on entry 
>    normalizePath: path=
> C:\DOCUME~1\wdunlap\LOCALS~1\Temp\Rtmp2XNJo1/downloaded_packages 
> 
>    The downloaded packages are in
>            C:\Documents and Settings\wdunlap\Local
> Settings\Temp\Rtmp2XNJo1\downloaded_packages
>    updating HTML package descriptions
> 
> It looks like your second call to normalizePath caused the problem.
> If the error message from normalizePath included the offending file
> name it would be easier to track down the problem.  E.g.,
>    > normalizePath(c(".", "no such file.txt"))
>    Error in normalizePath(path) :
>      path[2]="no such file.txt": The system cannot find the file
> specified
> instead of just
>    > normalizePath(c(".", "no such file.txt"))
>    Error in normalizePath(path) :
>      path[2]: The system cannot find the file specified
> 
> The following, barely tested, patch does this on Windows.  I don't
> know if
>    ...[printf]... "%ls", filenameToWchar(string,FALSE)
> is the proper way to display an R string.

I think your patch looks okay; I'll put it in.  Thanks!

Duncan Murdoch

> 
> Index: extra.c
> ===================================================================
> --- extra.c	(revision 47193)
> +++ extra.c	(working copy)
> @@ -1107,13 +1107,13 @@
>  	    if (!GetFullPathNameW(filenameToWchar(el, FALSE), MAX_PATH,
>  			     wtmp, &wtmp2)
>  	    	|| !GetLongPathNameW(wtmp, wlongpath, MAX_PATH))
> -	    	errorcall(call, "path[%d]: %s", i+1,
> formatError(GetLastError()));
> +	    	errorcall(call, "path[%d]=\"%ls\": %s", i+1,
> filenameToWchar(el,FALSE), formatError(GetLastError()));
>  	    wcstoutf8(longpath, wlongpath, wcslen(wlongpath)+1);
>  	    SET_STRING_ELT(ans, i, mkCharCE(longpath, CE_UTF8));
>  	} else {
>  	    if (!GetFullPathName(translateChar(el), MAX_PATH, tmp,
> &tmp2)
>  	        || !GetLongPathName(tmp, longpath, MAX_PATH))
> -	        errorcall(call, "path[%d]: %s", i+1,
> formatError(GetLastError()));
> +	        errorcall(call, "path[%d]=\"%ls\": %s", i+1,
> filenameToWchar(el, FALSE), formatError(GetLastError()));
>  	    SET_STRING_ELT(ans, i, mkChar(longpath));
>  	}
>      }
> It might be nice to include the current directory also.
>   
> Bill Dunlap
> TIBCO Software Inc - Spotfire Division
> wdunlap tibco.com  
> 
>> -----Original Message-----
>> From: r-devel-bounces at r-project.org 
>> [mailto:r-devel-bounces at r-project.org] On Behalf Of 
>> partho_bhowmick at ml.com
>> Sent: Tuesday, January 27, 2009 7:15 AM
>> To: r-devel at stat.math.ethz.ch
>> Cc: R-bugs at r-project.org
>> Subject: [Rd] Package (PR#13475)
>> 
>> Full_Name: Partho Bhowmick
>> Version: 2.8.1
>> OS: Windows XP
>> Submission from: (NULL) (199.43.48.131)
>> 
>> 
>> While trying to install package sn (I have tried multiple mirrors),
>> I get the following message
>> 
>> trying URL 
>> 'http://www.revolution-computing.com/cran/bin/windows/contrib/
> 2.8/sn_0.4-10.zip'
>> Content type 'application/zip' length 320643 bytes (313 Kb)
>> opened URL
>> downloaded 313 Kb
>> 
>> package 'sn' successfully unpacked and MD5 sums checked
>> Error in normalizePath(path) : 
>>   path[1]: The system cannot find the file specified
>> 
>> ______________________________________________
>> R-devel at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-devel
>> 
> 
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel



More information about the R-devel mailing list