* RE: setup-2.243 Crash / Install from Local Directory / WinXP
@ 2002-05-22 7:32 Robert Collins
2002-05-22 7:42 ` Re[2]: " Pavel Tsekov
` (2 more replies)
0 siblings, 3 replies; 11+ messages in thread
From: Robert Collins @ 2002-05-22 7:32 UTC (permalink / raw)
To: Max Bowsher, cygwin
C'mon Max, you *know* I need more detail than that.
Install from Local works fine here. Even though it's only a snapshot, I
wasn't aware of any -bugs- in the release.
Rob
> -----Original Message-----
> From: Max Bowsher [mailto:maxb@ukf.net]
> Sent: Wednesday, May 22, 2002 10:17 PM
> To: cygwin@cygwin.com
> Subject: setup-2.243 Crash / Install from Local Directory / WinXP
>
>
> setup-2.243 crashes just after clicking next on the select
> local package directory stage, when in Install from Local
> Directory mode.
>
> I know its only a snapshot, but this is just so you are aware
> of the bug.
>
> setup-2.218.2.9 works fine.
>
> Max.
>
--
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/
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re[2]: setup-2.243 Crash / Install from Local Directory / WinXP
2002-05-22 7:32 setup-2.243 Crash / Install from Local Directory / WinXP Robert Collins
@ 2002-05-22 7:42 ` Pavel Tsekov
2002-05-22 8:21 ` Re[3]: " Pavel Tsekov
2002-05-22 9:53 ` Pavel Tsekov
2002-05-22 8:47 ` Max Bowsher
2002-05-22 9:47 ` Cliff Hones
2 siblings, 2 replies; 11+ messages in thread
From: Pavel Tsekov @ 2002-05-22 7:42 UTC (permalink / raw)
To: Robert Collins; +Cc: Max Bowsher, cygwin
Hello Robert,
Wednesday, May 22, 2002, 2:20:20 PM, you wrote:
RC> C'mon Max, you *know* I need more detail than that.
RC> Install from Local works fine here. Even though it's only a snapshot, I
RC> wasn't aware of any -bugs- in the release.
I can confirm this - here is the output shown from Dr. Mingw JIT:
setup-2.243.exe caused an Access Violation at location 0043a1a5 in module setup-2.243.exe Reading from location 00000000.
Registers:
eax=00000000 ebx=00000000 ecx=015ef944 edx=00000000 esi=004839ac edi=015ef864
eip=0043a1a5 esp=015ef810 ebp=015ef884 iopl=0 nv up ei pl zr na po nc
cs=001b ss=0023 ds=0023 es=0023 fs=0038 gs=0000 efl=00000246
Call stack:
0043A1A5 setup-2.243.exe:0043A1A5
0041897C setup-2.243.exe:0041897C
0040E89F setup-2.243.exe:0040E89F
00410F03 setup-2.243.exe:00410F03
00411A3B setup-2.243.exe:00411A3B
00411F58 setup-2.243.exe:00411F58
77E602ED kernel32.dll:77E602ED OpenConsoleW
I'll try to debug this at home this night since I cannot access CVS
now. Btw I forced it to crash by doing 'Instal from local directory'
and choose a mirror named directory inside my root package directory.
It doesn't crash for me if a choose the root package directory I use
normally.
If someone can send me a debuggable setup.exe I'll debug it ASAP :)
--
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/
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re[3]: setup-2.243 Crash / Install from Local Directory / WinXP
2002-05-22 7:42 ` Re[2]: " Pavel Tsekov
@ 2002-05-22 8:21 ` Pavel Tsekov
2002-05-22 9:53 ` Pavel Tsekov
1 sibling, 0 replies; 11+ messages in thread
From: Pavel Tsekov @ 2002-05-22 8:21 UTC (permalink / raw)
To: cygwin
Hello Pavel,
Wednesday, May 22, 2002, 2:34:47 PM, you wrote:
PT> Hello Robert,
PT> Wednesday, May 22, 2002, 2:20:20 PM, you wrote:
RC>> C'mon Max, you *know* I need more detail than that.
RC>> Install from Local works fine here. Even though it's only a snapshot, I
RC>> wasn't aware of any -bugs- in the release.
PT> I can confirm this - here is the output shown from Dr. Mingw JIT:
PT> setup-2.243.exe caused an Access Violation at location 0043a1a5 in module setup-2.243.exe Reading from location 00000000.
PT> Registers:
PT> eax=00000000 ebx=00000000 ecx=015ef944 edx=00000000 esi=004839ac edi=015ef864
PT> eip=0043a1a5 esp=015ef810 ebp=015ef884 iopl=0 nv up ei pl zr na po nc
PT> cs=001b ss=0023 ds=0023 es=0023 fs=0038 gs=0000 efl=00000246
PT> Call stack:
PT> 0043A1A5 setup-2.243.exe:0043A1A5
PT> 0041897C setup-2.243.exe:0041897C
PT> 0040E89F setup-2.243.exe:0040E89F
PT> 00410F03 setup-2.243.exe:00410F03
PT> 00411A3B setup-2.243.exe:00411A3B
PT> 00411F58 setup-2.243.exe:00411F58
PT> 77E602ED kernel32.dll:77E602ED OpenConsoleW
PT> I'll try to debug this at home this night since I cannot access CVS
PT> now. Btw I forced it to crash by doing 'Instal from local directory'
PT> and choose a mirror named directory inside my root package directory.
|
download package +
PT> It doesn't crash for me if a choose the root package directory I use
the same here
PT> normally.
PT> If someone can send me a debuggable setup.exe I'll debug it ASAP :)
--
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/
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re[3]: setup-2.243 Crash / Install from Local Directory / WinXP
2002-05-22 7:42 ` Re[2]: " Pavel Tsekov
2002-05-22 8:21 ` Re[3]: " Pavel Tsekov
@ 2002-05-22 9:53 ` Pavel Tsekov
2002-05-22 9:59 ` Pavel Tsekov
2002-05-22 12:24 ` Christopher Faylor
1 sibling, 2 replies; 11+ messages in thread
From: Pavel Tsekov @ 2002-05-22 9:53 UTC (permalink / raw)
To: Pavel Tsekov; +Cc: Robert Collins, Pavel Tsekov, Max Bowsher
Wednesday, May 22, 2002, 2:34:47 PM, you wrote:
PT> I can confirm this - here is the output shown from Dr. Mingw JIT:
I'm not sure this is the same crash but the crash I'm reporting is
easy reproducable and I think it is not the expected behaviour :)
Here is more info on it..
The crash is caused by this code from IniParseFindVisitor.cc, line 62:
/* Copy leading part of path to temporary buffer and unescape it */
String prefix (&basePath.cstr_oneuse()[baseLength + 1]);
String mirror = rfc1738_unescape_part (prefix.substr(0,prefix.size() - 1));
baseLenght - the length of the fullpath to the local package dir
basePath - the full path of a directory we are currently scanning
with FindFirstFile and friends.
When scannin the local package directory itself prefix would be with
zero length. Now prefix.size() will result in 0 thus this call
prefix.substr(0,prefix.size() - 1) will look like this
prefix.substr(0, -1) i.e. give me the whole string. Ok fine...
Now take a look at String::substr:
String
String::substr(size_t start, size_t len) const
{
// Adapt the C++ string class
return string(cstr_oneuse()).substr(start, len);
}
Ok cstr_oneuse() would return 0. This is where the crash happens
because the string class does strlen() when this constructor is used
i.e. const char *. I suggest to change this to:
string tmpStr;
tmpStr.assign (cstr_oneuse(), theData->length); // this construct is safe
return tmpStr.substr (start, len);
You can also check theData->length and return empty string :)
Here is a backtrace from the crash:
#0 0x0043a1a5 in String::substr (this=0x152fa94, start=0, len=4294967295)
at /usr/include/g++-3/std/straits.h:125
125 { return strlen (s); }
(gdb) bt
#0 0x0043a1a5 in String::substr (this=0x152fa94, start=0, len=4294967295)
at /usr/include/g++-3/std/straits.h:125
#1 0x0041897c in IniParseFindVisitor::visitFile (this=0x152fe14,
basePath=@0x152fc14, theFile=0x152fc44) at IniParseFindVisitor.cc:65
#2 0x0040e89f in Find::accept (this=0x152fe34, aVisitor=@0x152fe14)
at find.cc:71
#3 0x00410f03 in do_local_ini (owner=0x1f0272) at ini.cc:76
#4 0x00411a3b in do_ini_thread (h=0x400000, owner=0x1f0272) at ini.cc:155
#5 0x00411f58 in do_ini_thread_reflector (p=0x4723a8) at ini.cc:222
#6 0x77e602ed in _libwsock32_a_iname ()
(gdb)
--
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/
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re[3]: setup-2.243 Crash / Install from Local Directory / WinXP
2002-05-22 9:53 ` Pavel Tsekov
@ 2002-05-22 9:59 ` Pavel Tsekov
2002-05-22 12:24 ` Christopher Faylor
1 sibling, 0 replies; 11+ messages in thread
From: Pavel Tsekov @ 2002-05-22 9:59 UTC (permalink / raw)
To: Pavel Tsekov; +Cc: Robert Collins, Pavel Tsekov, Max Bowsher
Wednesday, May 22, 2002, 2:34:47 PM, you wrote:
PT> I can confirm this - here is the output shown from Dr. Mingw JIT:
I'm not sure this is the same crash but the crash I'm reporting is
easy reproducable and I think it is not the expected behaviour :)
Here is more info on it..
The crash is caused by this code from IniParseFindVisitor.cc, line 62:
/* Copy leading part of path to temporary buffer and unescape it */
String prefix (&basePath.cstr_oneuse()[baseLength + 1]);
String mirror = rfc1738_unescape_part (prefix.substr(0,prefix.size() - 1));
baseLenght - the length of the fullpath to the local package dir
basePath - the full path of a directory we are currently scanning
with FindFirstFile and friends.
When scannin the local package directory itself prefix would be with
zero length. Now prefix.size() will result in 0 thus this call
prefix.substr(0,prefix.size() - 1) will look like this
prefix.substr(0, -1) i.e. give me the whole string. Ok fine...
Now take a look at String::substr:
String
String::substr(size_t start, size_t len) const
{
// Adapt the C++ string class
return string(cstr_oneuse()).substr(start, len);
}
Ok cstr_oneuse() would return 0. This is where the crash happens
because the string class does strlen() when this constructor is used
i.e. const char *. I suggest to change this to:
string tmpStr;
tmpStr.assign (cstr_oneuse(), theData->length); // this construct is safe
return tmpStr.substr (start, len);
You can also check theData->length and return empty string :)
Here is a backtrace from the crash:
#0 0x0043a1a5 in String::substr (this=0x152fa94, start=0, len=4294967295)
at /usr/include/g++-3/std/straits.h:125
125 { return strlen (s); }
(gdb) bt
#0 0x0043a1a5 in String::substr (this=0x152fa94, start=0, len=4294967295)
at /usr/include/g++-3/std/straits.h:125
#1 0x0041897c in IniParseFindVisitor::visitFile (this=0x152fe14,
basePath=@0x152fc14, theFile=0x152fc44) at IniParseFindVisitor.cc:65
#2 0x0040e89f in Find::accept (this=0x152fe34, aVisitor=@0x152fe14)
at find.cc:71
#3 0x00410f03 in do_local_ini (owner=0x1f0272) at ini.cc:76
#4 0x00411a3b in do_ini_thread (h=0x400000, owner=0x1f0272) at ini.cc:155
#5 0x00411f58 in do_ini_thread_reflector (p=0x4723a8) at ini.cc:222
#6 0x77e602ed in _libwsock32_a_iname ()
(gdb)
--
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/
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: setup-2.243 Crash / Install from Local Directory / WinXP
2002-05-22 9:53 ` Pavel Tsekov
2002-05-22 9:59 ` Pavel Tsekov
@ 2002-05-22 12:24 ` Christopher Faylor
1 sibling, 0 replies; 11+ messages in thread
From: Christopher Faylor @ 2002-05-22 12:24 UTC (permalink / raw)
To: cygwin
On Wed, May 22, 2002 at 04:32:13PM +0200, Pavel Tsekov wrote:
>Wednesday, May 22, 2002, 2:34:47 PM, you wrote:
>
>PT> I can confirm this - here is the output shown from Dr. Mingw JIT:
>
>I'm not sure this is the same crash but the crash I'm reporting is
>easy reproducable and I think it is not the expected behaviour :)
>Here is more info on it..
>
>The crash is caused by this code from IniParseFindVisitor.cc, line 62:
>
> /* Copy leading part of path to temporary buffer and unescape it */
>
> String prefix (&basePath.cstr_oneuse()[baseLength + 1]);
> String mirror = rfc1738_unescape_part (prefix.substr(0,prefix.size() - 1));
>
> baseLenght - the length of the fullpath to the local package dir
> basePath - the full path of a directory we are currently scanning
> with FindFirstFile and friends.
>
>When scannin the local package directory itself prefix would be with
>zero length. Now prefix.size() will result in 0 thus this call
>prefix.substr(0,prefix.size() - 1) will look like this
>prefix.substr(0, -1) i.e. give me the whole string. Ok fine...
>Now take a look at String::substr:
Heh. Sounds very similar to the problem that I fixed in the branch.
cgf
--
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/
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: setup-2.243 Crash / Install from Local Directory / WinXP
2002-05-22 7:32 setup-2.243 Crash / Install from Local Directory / WinXP Robert Collins
2002-05-22 7:42 ` Re[2]: " Pavel Tsekov
@ 2002-05-22 8:47 ` Max Bowsher
2002-05-22 9:27 ` Re[2]: " Pavel Tsekov
2002-05-22 9:47 ` Cliff Hones
2 siblings, 1 reply; 11+ messages in thread
From: Max Bowsher @ 2002-05-22 8:47 UTC (permalink / raw)
To: cygwin
Robert Collins <robert.collins@itdomain.com.au> wrote:
> C'mon Max, you *know* I need more detail than that.
> Install from Local works fine here. Even though it's only a snapshot, I
> wasn't aware of any -bugs- in the release.
>
> Rob
Yes. I was hoping it would happen on your machine too. Given that it doesn't, I
understand that there is nothing you can do directly to help with this.
However, I don't really have any more detail to give. It doesn't run long enough
to create any log files. I guess I need to build setup myself, and throw some
extra logging in there to isolate the problem.
So... I untar the setup source from cygwin.com/setup-snapshots, ./configure,
make
And get an error - implicit declaration of mkdir_p(). Ok - I fix this by moving
#include "mkdir.h" outside an #if defined(WIN32) && !defined (_CYGWIN_) section.
At the end of the build, I get a rather worrying warning:
/usr/lib/gcc-lib/i686-pc-cygwin/2.95.3-5/../../../../i686-pc-cygwin/bin/ld:
warning: cannot find entry symbol _WinMainCRTStartup; defaulting to 00401000
But the setup.exe does run, and does reproduce the crash.
At the moment, I'm building it cygwin1.dll-linked. Would you post a MinGW build
recipe when you have time?
Thanks,
Max.
Minor unrelated thing: An a.exe is created in the build directory. It is an
invalid Win32 application.
--
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/
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: setup-2.243 Crash / Install from Local Directory / WinXP
2002-05-22 7:32 setup-2.243 Crash / Install from Local Directory / WinXP Robert Collins
2002-05-22 7:42 ` Re[2]: " Pavel Tsekov
2002-05-22 8:47 ` Max Bowsher
@ 2002-05-22 9:47 ` Cliff Hones
2002-05-22 13:22 ` Re[2]: " Pavel Tsekov
2 siblings, 1 reply; 11+ messages in thread
From: Cliff Hones @ 2002-05-22 9:47 UTC (permalink / raw)
To: cygwin
Robert Collins <robert.collins@itdomain.com.au> wrote:
> C'mon Max, you *know* I need more detail than that.
>
> Install from Local works fine here. Even though it's only a snapshot, I
> wasn't aware of any -bugs- in the release.
Why doesn't http://cygwin.com/ml/cygwin/2002-05/msg01210.html count
as a bug? Is it because it was on W98?
-- Cliff
--
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/
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re[2]: setup-2.243 Crash / Install from Local Directory / WinXP
2002-05-22 9:47 ` Cliff Hones
@ 2002-05-22 13:22 ` Pavel Tsekov
0 siblings, 0 replies; 11+ messages in thread
From: Pavel Tsekov @ 2002-05-22 13:22 UTC (permalink / raw)
To: Cliff Hones; +Cc: cygwin
Hello Cliff,
Wednesday, May 22, 2002, 4:22:57 PM, you wrote:
CH> Robert Collins <robert.collins@itdomain.com.au> wrote:
>> C'mon Max, you *know* I need more detail than that.
>>
>> Install from Local works fine here. Even though it's only a snapshot, I
>> wasn't aware of any -bugs- in the release.
CH> Why doesn't http://cygwin.com/ml/cygwin/2002-05/msg01210.html count
CH> as a bug? Is it because it was on W98?
I've been tracing the exception with a disassembler - I'm not quite
positve why exactly does the fault occur, but I can say for sure
that it was caused from some code inside LogSingleton or LogFile
classes. Maybe an exception being thrown from one of these... I can't
be sure because it seems that the source provided along with the
binary snapshot is not exactly the same as the one from which the
binary was compiled... Robert, can you confirm/deny this assumption ?
--
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/
^ permalink raw reply [flat|nested] 11+ messages in thread
* RE: Re[2]: setup-2.243 Crash / Install from Local Directory / WinXP
@ 2002-05-23 7:13 Robert Collins
0 siblings, 0 replies; 11+ messages in thread
From: Robert Collins @ 2002-05-23 7:13 UTC (permalink / raw)
To: Pavel Tsekov, Cliff Hones
> -----Original Message-----
> From: Pavel Tsekov [mailto:ptsekov@syntrex.com]
> Sent: Thursday, May 23, 2002 2:28 AM
> To: Cliff Hones
> Cc: cygwin@cygwin.com
> Subject: Re[2]: setup-2.243 Crash / Install from Local
> Directory / WinXP
>
>
> Hello Cliff,
>
> Wednesday, May 22, 2002, 4:22:57 PM, you wrote:
>
> CH> Robert Collins <robert.collins@itdomain.com.au> wrote:
>
> >> C'mon Max, you *know* I need more detail than that.
> >>
> >> Install from Local works fine here. Even though it's only
> a snapshot,
> >> I wasn't aware of any -bugs- in the release.
>
> CH> Why doesn't
> http://cygwin.com/ml/cygwin/2002-> 05/msg01210.html count
> CH>
> as a bug? Is it because it was on W98?
>
> I've been tracing the exception with a disassembler - I'm not
> quite positve why exactly does the fault occur, but I can say
> for sure that it was caused from some code inside
> LogSingleton or LogFile classes. Maybe an exception being
> thrown from one of these... I can't be sure because it seems
> that the source provided along with the binary snapshot is
> not exactly the same as the one from which the binary was
> compiled... Robert, can you confirm/deny this assumption ?
The source provided is the source that binary was created from. I use
the build script I posted to create snapshots, and it uses make dist to
create the source package.
Rob
--
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/
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2002-05-23 9:50 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-05-22 7:32 setup-2.243 Crash / Install from Local Directory / WinXP Robert Collins
2002-05-22 7:42 ` Re[2]: " Pavel Tsekov
2002-05-22 8:21 ` Re[3]: " Pavel Tsekov
2002-05-22 9:53 ` Pavel Tsekov
2002-05-22 9:59 ` Pavel Tsekov
2002-05-22 12:24 ` Christopher Faylor
2002-05-22 8:47 ` Max Bowsher
2002-05-22 9:27 ` Re[2]: " Pavel Tsekov
2002-05-22 9:47 ` Cliff Hones
2002-05-22 13:22 ` Re[2]: " Pavel Tsekov
2002-05-23 7:13 Robert Collins
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).