Does compile now, but I managed to produce an application error during a test run on a https site.
I produced a debug build with /DDEBUG /Zi /Od /Fd /FR and produced the wget.bsc by running bscmake on all the sbr files, but I didn't yet understand how to use that one in VC++ in order to get a meaningfull stack trace and so on. The only thing I got for now is :SSLEAY32! 0023ca38()" as the breaking point. Anybody knows to to debug this beast or how to generate a working project file in order to make the source browser work ? Heiko Herold -- -- PREVINET S.p.A. www.previnet.it -- Heiko Herold [EMAIL PROTECTED] -- +39-041-5907073 ph -- +39-041-5907472 fax > -----Original Message----- > From: Hrvoje Niksic [mailto:[EMAIL PROTECTED] > Sent: Tuesday, September 16, 2003 11:02 PM > To: Herold Heiko > Cc: List Wget (E-mail) > Subject: Re: windows compile error > > > Herold Heiko <[EMAIL PROTECTED]> writes: > > > Just a quick note, the current cvs code on windows during > compile (with > > VC++6) stops with > > > > cl /I. /DWINDOWS /D_CONSOLE /DHAVE_CONFIG_H > /DSYSTEM_WGETRC=\"wgetrc\" > > /DHAVE_SSL /nologo /MT /W0 /O2 /c utils.c > > utils.c > > utils.c(1651) : error C2520: conversion from unsigned > __int64 to double not > > implemented, use signed __int64 > > > > The culprit seems to be (in wtimer_sys_diff) > > > > #ifdef WINDOWS > > return (double)(wst1->QuadPart - wst2->QuadPart) / 10000; > > #endif > > Does this patch help? > > 2003-09-16 Hrvoje Niksic <[EMAIL PROTECTED]> > > * utils.c (wtimer_sys_diff): Convert the time > difference to signed > __int64, then to double. This works around MS VC++ 6 > which can't > convert unsigned __int64 to double directly. > > Index: src/utils.c > =================================================================== > RCS file: /pack/anoncvs/wget/src/utils.c,v > retrieving revision 1.54 > diff -u -r1.54 utils.c > --- src/utils.c 2003/09/15 21:14:15 1.54 > +++ src/utils.c 2003/09/16 21:01:02 > @@ -1648,7 +1648,10 @@ > #endif > > #ifdef WINDOWS > - return (double)(wst1->QuadPart - wst2->QuadPart) / 10000; > + /* VC++ 6 doesn't support direct cast of uint64 to double. To work > + around this, we subtract, then convert to signed, then > finally to > + double. */ > + return (double)(signed __int64)(wst1->QuadPart - > wst2->QuadPart) / 10000; > #endif > } > >