develooper Front page | perl.perl5.porters | Postings from September 2000

FW: perldoc fails if $TEMP contains spaces

Thread Next
From:
Moore, Paul
Date:
September 14, 2000 00:58
Subject:
FW: perldoc fails if $TEMP contains spaces
Message ID:
714DFA46B9BBD0119CD000805FC1F53B012A82AA@UKRUX002.rundc.uk.origin-it.com
Perlbug seems to have eaten this without trace...
Paul.

>  -----Original Message-----
> From: 	Moore, Paul  
> Sent:	13 September 2000 09:37
> To:	'perlbug@perl.com'
> Subject:	perldoc fails if $TEMP contains spaces
> 
> This is a bug report for perl from paul.moore@uk.origin-it.com,
> generated with the help of perlbug 1.28 running under perl v5.6.0.
> 
> When the environment variable TEMP points to a directory with spaces in
> the
> name, perldoc fails - or, more accurately, it tries to run the default
> pager(s) which fail because the temporary filename isn't quoted, and then
> falls back to Windows notepad, which works because it treats its whole
> argument string as a single filename, rather than doing argv processing...
> 
> While having TEMP point to a directory name with spaces is evil, and
> therefore
> could reasonably be viewed as unsupported, regrettably it appears to be
> the
> default value under Windows 2000. As such, it is likely that more and more
> users will start hitting this problem.
> 
> Quoting the filename in the system() call which invokes the pager is
> enough to
> fix the problem - this works on Win32, and probably causes no harm on
> other
> systems. If it could, it may be necessary to put an OS test in there...
> 
> Paul Moore
> 
> --- perldoc.bat.orig	Thu Aug 31 20:35:48 2000
> +++ perldoc.bat	Wed Sep 13 09:31:16 2000
> @@ -380,7 +380,7 @@
>      }
>      else {
>  	foreach my $pager (@pagers) {
> -	    last if system("$pager $tmp") == 0;
> +	    last if system("$pager \"$tmp\"") == 0;
>  	}
>      }
>  }
> ---
> Flags:
>     category=utilities
>     severity=low
> ---
> Site configuration information for perl v5.6.0:
> 
> Configured by UK03306 at Thu Aug 31 20:32:34 2000.
> 
> Summary of my perl5 (revision 5 version 6 subversion 0) configuration:
>   Platform:
>     osname=MSWin32, osvers=4.0, archname=MSWin32-x86-multi-thread
>     uname=''
>     config_args='undef'
>     hint=recommended, useposix=true, d_sigaction=undef
>     usethreads=undef use5005threads=undef useithreads=define
> usemultiplicity=define
>     useperlio=undef d_sfio=undef uselargefiles=undef 
>     use64bitint=undef use64bitall=undef uselongdouble=undef usesocks=undef
>   Compiler:
>     cc='cl', optimize='-O1 -MD -DNDEBUG', gccversion=
>     cppflags='-DWIN32'
>     ccflags ='-O1 -MD -DNDEBUG -DWIN32 -D_CONSOLE -DNO_STRICT
> -DHAVE_DES_FCRYPT  -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS
> -DPERL_MSVCRT_READFIX'
>     stdchar='char', d_stdstdio=define, usevfork=false
>     intsize=4, longsize=4, ptrsize=4, doublesize=8
>     d_longlong=undef, longlongsize=8, d_longdbl=define, longdblsize=10
>     ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t',
> lseeksize=4
>     alignbytes=8, usemymalloc=n, prototype=define
>   Linker and Libraries:
>     ld='link', ldflags ='-nologo -nodefaultlib -release
> -libpath:"C:\p4view\Apps\ActivePerl\MSI\data\ActivePerl\Perl\lib\CORE"
> -machine:x86'
>     libpth="C:\VisualStudio\VC98\mfc\lib" "C:\VisualStudio\VC98\lib"
> "C:\Program Files\Mts\Lib" "C:\Applications\Perl\lib\CORE"
>     libs=  oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib
> comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib  netapi32.lib
> uuid.lib wsock32.lib mpr.lib winmm.lib  version.lib odbc32.lib
> odbccp32.lib msvcrt.lib
>     libc=msvcrt.lib, so=dll, useshrplib=yes, libperl=perl56.lib
>   Dynamic Linking:
>     dlsrc=dl_win32.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' '
>     cccdlflags=' ', lddlflags='-dll -nologo -nodefaultlib -release
> -libpath:"C:\p4view\Apps\ActivePerl\MSI\data\ActivePerl\Perl\lib\CORE"
> -machine:x86'
> 
> Locally applied patches:
>     ACTIVEPERL_LOCAL_PATCHES_ENTRY
> 
> ---
> @INC for perl v5.6.0:
>     C:/Applications/Perl/lib
>     C:/Applications/Perl/site/lib
>     .
> 
> ---
> Environment for perl v5.6.0:
>     HOME (unset)
>     LANG (unset)
>     LANGUAGE (unset)
>     LD_LIBRARY_PATH (unset)
>     LOGDIR (unset)
>  
> PATH=C:\Applications\Perl\bin\;C:\WINNT\system32;C:\WINNT;C:\UTILS;C:\MSSQ
> L7\BINN;C:\DMINT40\Win32\Bin;C:\Program
> Files\CWNT;C:\NTRESKIT;C:\Applications\Tcl\bin;C:\Applications\Mingw32\bin
> ;C:\Applications\Borland\Bcc55\Bin;C:\Applications\XEmacs\XEmacs-21.2.29\i
> 586-pc-win32;C:\Program
> Files\Mts;C:\WINNT\System32\WBEM;C:\Oracle\Ora81\bin;C:\Program
> Files\Oracle\jre\1.1.7\bin;C:\Oracle\Ora81\orb\bin;C:\VisualStudio\Common\
> Tools\WinNT;C:\VisualStudio\Common\MSDev98\Bin;C:\VisualStudio\Common\Tool
> s;C:\VisualStudio\VC98\bin
>     PERL_BADLANG (unset)
>     SHELL (unset)

Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About