Mail Archives: cygwin/2002/08/03/12:08:34
--0-1994278540-1028390902=:85525
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Hi. The /usr/bin/info program is supposed to be able to automatically
read compressed files, but this functionality is broken on Cygwin for
some reason. I've tracked it down to a function in info's filesys.c
that is failing. The code, with some debugging statements I've added, is:
stream = popen (command, FOPEN_RBIN);
/* FOO */
printf("%s\n", command);
if (stream)
{
/* This never gets printed */
printf("stream OK\n");
}
/* end FOO */
The output looks like this:
$ ./ginfo.exe -f ./gzip.info.bz2
COMMAND IS:bunzip2.exe < /usr/local/src/texinfo-4.2/info/./gzip.info.bz2
info: ./gzip.info.bz2: Invalid argument
From bash, running the command,
$ bunzip2.exe < /usr/local/src/texinfo-4.2/info/./gzip.info.bz2
produces the expected file on STDOUT.
As far as I can tell popen() works in Cygwin (it's listed under
'Other' fuctions in the API Ref), but I have no experience using it.
Anyone know what needs to be done for this to work?
Attached is some strace output...I deleted about 200 lines of ginfo trying
to guess the filename, please let me know if more (or less) is needed.
Thanks.
__________________________________________________
Do You Yahoo!?
Yahoo! Health - Feel better, live better
http://health.yahoo.com
--0-1994278540-1028390902=:85525
Content-Type: text/plain; name="strace.txt"
Content-Description: strace.txt
Content-Disposition: inline; filename="strace.txt"
167 291439 [main] ginfo 1436 stat64: entering
159 291598 [main] ginfo 1436 normalize_posix_path: src /usr/local/src/texinfo-4.2/info/./gzip.info.bz2
170 291768 [main] ginfo 1436 normalize_posix_path: /usr/local/src/texinfo-4.2/info/gzip.info.bz2 = normalize_posix_path (/usr/local/src/texinfo-4.2/info/./gzip.info.bz2)
158 291926 [main] ginfo 1436 mount_info::conv_to_win32_path: conv_to_win32_path (/usr/local/src/texinfo-4.2/info/gzip.info.bz2)
162 292088 [main] ginfo 1436 mount_info::cygdrive_win32_path: src '/usr/local/src/texinfo-4.2/info/gzip.info.bz2', dst ''
159 292247 [main] ginfo 1436 set_flags: flags: binary (0x2)
153 292400 [main] ginfo 1436 mount_info::conv_to_win32_path: src_path /usr/local/src/texinfo-4.2/info/gzip.info.bz2, dst c:\cygwin\usr\local\src\texinfo-4.2\info\gzip.info.bz2, flags 0xA, rc 0
693 293093 [main] ginfo 1436 symlink_info::check: not a symlink
281 293374 [main] ginfo 1436 symlink_info::check: 0 = symlink.check (c:\cygwin\usr\local\src\texinfo-4.2\info\gzip.info.bz2, 0x22F348) (0xA)
167 293541 [main] ginfo 1436 path_conv::check: root_dir(c:\), this->path(c:\cygwin\usr\local\src\texinfo-4.2\info\gzip.info.bz2), set_has_acls(8)
183 293724 [main] ginfo 1436 dtable::build_fhandler: fd -1, fh 0x6168086C
164 293888 [main] ginfo 1436 stat_worker: (/usr/local/src/texinfo-4.2/info/./gzip.info.bz2, 0x22FBC8, 0, 0x22F828), file_attributes 32
155 294043 [main] ginfo 1436 fhandler_base::open: (c:\cygwin\usr\local\src\texinfo-4.2\info\gzip.info.bz2, 0x110000) query_open 0
366 294409 [main] ginfo 1436 fhandler_base::open: 0xE8 = CreateFileA (c:\cygwin\usr\local\src\texinfo-4.2\info\gzip.info.bz2, 0x80000000, 0x7, 0x22F748, 0x3, 0x2000081, 0)
259 294668 [main] ginfo 1436 fhandler_base::set_flags: flags 0x110000, supplied_bin 0x10000
157 294825 [main] ginfo 1436 fhandler_base::set_flags: O_TEXT/O_BINARY set in flags 0x10000
150 294975 [main] ginfo 1436 fhandler_base::set_flags: filemode set to binary
147 295122 [main] ginfo 1436 fhandler_base::open: 1 = fhandler_base::open (c:\cygwin\usr\local\src\texinfo-4.2\info\gzip.info.bz2, 0x110000)
154 295276 [main] ginfo 1436 fhandler_disk_file::open: 1 = fhandler_disk_file::open (c:\cygwin\usr\local\src\texinfo-4.2\info\gzip.info.bz2, 0x110000)
224 295500 [main] ginfo 1436 fhandler_disk_file::fstat_by_handle: 1 = GetFileInformationByHandle (c:\cygwin\usr\local\src\texinfo-4.2\info\gzip.info.bz2, 232)
388 295888 [main] ginfo 1436 fhandler_disk_file::fstat_helper: 0 = fstat (, 0x22FBC8) st_atime=3D4BFD46 st_size=5916, st_mode=0x81A4, st_ino=736083, sizeof=88
234 296122 [main] ginfo 1436 fhandler_base::close: closing '/usr/local/src/texinfo-4.2/info/gzip.info.bz2' handle 0xE8
237 296359 [main] ginfo 1436 stat_worker: 0 = (/usr/local/src/texinfo-4.2/info/./gzip.info.bz2, 0x22FBC8)
816 297175 [main] ginfo 1436 stat64: entering
152 297327 [main] ginfo 1436 normalize_posix_path: src /usr/local/src/texinfo-4.2/info/./gzip.info.bz2
157 297484 [main] ginfo 1436 normalize_posix_path: /usr/local/src/texinfo-4.2/info/gzip.info.bz2 = normalize_posix_path (/usr/local/src/texinfo-4.2/info/./gzip.info.bz2)
156 297640 [main] ginfo 1436 mount_info::conv_to_win32_path: conv_to_win32_path (/usr/local/src/texinfo-4.2/info/gzip.info.bz2)
172 297812 [main] ginfo 1436 mount_info::cygdrive_win32_path: src '/usr/local/src/texinfo-4.2/info/gzip.info.bz2', dst ''
161 297973 [main] ginfo 1436 set_flags: flags: binary (0x2)
149 298122 [main] ginfo 1436 mount_info::conv_to_win32_path: src_path /usr/local/src/texinfo-4.2/info/gzip.info.bz2, dst c:\cygwin\usr\local\src\texinfo-4.2\info\gzip.info.bz2, flags 0xA, rc 0
688 298810 [main] ginfo 1436 symlink_info::check: not a symlink
268 299078 [main] ginfo 1436 symlink_info::check: 0 = symlink.check (c:\cygwin\usr\local\src\texinfo-4.2\info\gzip.info.bz2, 0x22F438) (0xA)
213 299291 [main] ginfo 1436 path_conv::check: root_dir(c:\), this->path(c:\cygwin\usr\local\src\texinfo-4.2\info\gzip.info.bz2), set_has_acls(8)
206 299497 [main] ginfo 1436 dtable::build_fhandler: fd -1, fh 0x6168086C
353 299850 [main] ginfo 1436 stat_worker: (/usr/local/src/texinfo-4.2/info/./gzip.info.bz2, 0x22FCB8, 0, 0x22F918), file_attributes 32
216 300066 [main] ginfo 1436 fhandler_base::open: (c:\cygwin\usr\local\src\texinfo-4.2\info\gzip.info.bz2, 0x110000) query_open 0
382 300448 [main] ginfo 1436 fhandler_base::open: 0xE8 = CreateFileA (c:\cygwin\usr\local\src\texinfo-4.2\info\gzip.info.bz2, 0x80000000, 0x7, 0x22F838, 0x3, 0x2000081, 0)
243 300691 [main] ginfo 1436 fhandler_base::set_flags: flags 0x110000, supplied_bin 0x10000
157 300848 [main] ginfo 1436 fhandler_base::set_flags: O_TEXT/O_BINARY set in flags 0x10000
365 301213 [main] ginfo 1436 fhandler_base::set_flags: filemode set to binary
212 301425 [main] ginfo 1436 fhandler_base::open: 1 = fhandler_base::open (c:\cygwin\usr\local\src\texinfo-4.2\info\gzip.info.bz2, 0x110000)
158 301583 [main] ginfo 1436 fhandler_disk_file::open: 1 = fhandler_disk_file::open (c:\cygwin\usr\local\src\texinfo-4.2\info\gzip.info.bz2, 0x110000)
229 301812 [main] ginfo 1436 fhandler_disk_file::fstat_by_handle: 1 = GetFileInformationByHandle (c:\cygwin\usr\local\src\texinfo-4.2\info\gzip.info.bz2, 232)
258 302070 [main] ginfo 1436 fhandler_disk_file::fstat_helper: 0 = fstat (, 0x22FCB8) st_atime=3D4BFD7E st_size=5916, st_mode=0x81A4, st_ino=736083, sizeof=88
198 302268 [main] ginfo 1436 fhandler_base::close: closing '/usr/local/src/texinfo-4.2/info/gzip.info.bz2' handle 0xE8
240 302508 [main] ginfo 1436 stat_worker: 0 = (/usr/local/src/texinfo-4.2/info/./gzip.info.bz2, 0x22FCB8)
397 302905 [main] ginfo 1436 normalize_posix_path: src c:\cygwin\usr\local\src\texinfo-4.2\info\strace
186 303091 [main] ginfo 1436 mount_info::conv_to_posix_path: conv_to_posix_path (c:\cygwin\usr\local\src\texinfo-4.2\info\strace, no-keep-rel, no-add-slash)
170 303261 [main] ginfo 1436 normalize_win32_path: c:\cygwin\usr\local\src\texinfo-4.2\info\strace = normalize_win32_path (c:\cygwin\usr\local\src\texinfo-4.2\info\strace)
174 303435 [main] ginfo 1436 mount_info::conv_to_posix_path: /usr/local/src/texinfo-4.2/info/strace = conv_to_posix_path (c:\cygwin\usr\local\src\texinfo-4.2\info\strace)
177 303612 [main] ginfo 1436 mount_info::conv_to_win32_path: conv_to_win32_path (/usr/local/src/texinfo-4.2/info/strace)
171 303783 [main] ginfo 1436 mount_info::cygdrive_win32_path: src '/usr/local/src/texinfo-4.2/info/strace', dst ''
167 303950 [main] ginfo 1436 set_flags: flags: binary (0x2)
158 304108 [main] ginfo 1436 mount_info::conv_to_win32_path: src_path /usr/local/src/texinfo-4.2/info/strace, dst c:\cygwin\usr\local\src\texinfo-4.2\info\strace, flags 0xA, rc 0
701 304809 [main] ginfo 1436 symlink_info::check: not a symlink
269 305078 [main] ginfo 1436 symlink_info::check: 0 = symlink.check (c:\cygwin\usr\local\src\texinfo-4.2\info\strace, 0x22DEB8) (0xA)
183 305261 [main] ginfo 1436 path_conv::check: root_dir(c:\), this->path(c:\cygwin\usr\local\src\texinfo-4.2\info\strace), set_has_acls(8)
241 305502 [main] ginfo 1436 fhandler_disk_file::fstat_by_handle: 1 = GetFileInformationByHandle (c:\cygwin\usr\local\src\texinfo-4.2\info\strace, 328)
249 305751 [main] ginfo 1436 fhandler_disk_file::fstat_helper: 0 = fstat (, 0x22E6D8) st_atime=3D4BFD7D st_size=146650, st_mode=0x81A4, st_ino=408405, sizeof=88
187 305938 [main] ginfo 1436 fstat64: 0 = fstat (1, 0x22E6D8)
570 306508 [main] ginfo 1436 _write: write (2, 0x22E4F8, 6)
171 306679 [main] ginfo 1436 fhandler_base::write: binary write
182 306861 [main] ginfo 1436 fhandler_base::write: 6 = write (0x22E4F8, 6)
159 307020 [main] ginfo 1436 _write: 6 = write (2, 0x22E4F8, 6)
163 307183 [main] ginfo 1436 _write: write (2, 0x22E4E8, 33)
151 307334 [main] ginfo 1436 fhandler_base::write: binary write
176 307510 [main] ginfo 1436 fhandler_base::write: 33 = write (0x22E4E8, 33)
199 307709 [main] ginfo 1436 _write: 33 = write (2, 0x22E4E8, 33)
167 307876 [main] ginfo 1436 _write: write (2, 0x22E4F8, 1)
154 308030 [main] ginfo 1436 fhandler_base::write: binary write
162 308192 [main] ginfo 1436 fhandler_base::write: 1 = write (0x22E4F8, 1)
157 308349 [main] ginfo 1436 _write: 1 = write (2, 0x22E4F8, 1)
169 308518 [main] ginfo 1436 _write: write (1, 0x10101D80, 73)
155 308673 [main] ginfo 1436 fhandler_base::write: binary write
COMMAND IS:bunzip2.exe < /usr/local/src/texinfo-4.2/info/./gzip.info.bz2
153 308826 [main] ginfo 1436 fhandler_base::write: 73 = write (0x10101D80, 73)
152 308978 [main] ginfo 1436 _write: 73 = write (1, 0x10101D80, 73)
413 309391 [main] ginfo 1436 do_exit: do_exit (1)
171 309562 [main] ginfo 1436 void: 0x0 = signal (20, 0x1)
1896 311458 [main] ginfo 1436 void: 0x0 = signal (1, 0x1)
245 311703 [main] ginfo 1436 void: 0x0 = signal (2, 0x1)
162 311865 [main] ginfo 1436 void: 0x0 = signal (3, 0x1)
161 312026 [main] ginfo 1436 fhandler_base::close: closing '/dev/piper' handle 0xFC
644 312670 [main] ginfo 1436 fhandler_base::close: closing '/usr/local/src/texinfo-4.2/info/strace' handle 0x148
256 312926 [main] ginfo 1436 fhandler_base::close: closing '/dev/pipew' handle 0x120
181 313107 [main] ginfo 1436 proc_terminate: nchildren 0, nzombies 0
159 313266 [main] ginfo 1436 proc_terminate: leaving
150 313416 [main] ginfo 1436 sigproc_terminate: entering
144 313560 [main] ginfo 1436 sigproc_terminate: done
376 313936 [main] ginfo 1436 __to_clock_t: dwHighDateTime 0, dwLowDateTime 701008
170 314106 [main] ginfo 1436 __to_clock_t: total 00000000 00000046
157 314263 [main] ginfo 1436 __to_clock_t: dwHighDateTime 0, dwLowDateTime 1001440
150 314413 [main] ginfo 1436 __to_clock_t: total 00000000 00000064
1869 316282 [main] ginfo 1436 _pinfo::exit: Calling ExitProcess 1
--0-1994278540-1028390902=:85525
Content-Type: text/plain; charset=us-ascii
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
--0-1994278540-1028390902=:85525--
- Raw text -