[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Win32 PFile



Peter Burns wrote:

>>Ooops. I just saw that many of your .dsp files are still missing from CVS.
>>Which need to be included?

>Perhaps I should have simply created one dll for penguinplay and made the
>others into
>static libraries that the penguinplay dll links with.

Is it possible to create one dll containing PFile *and* PSound *and*
thutility stuff?

>Maybe I should do a bit of experimentation to see what would be the best way to
>do it.

Ok.

>>There's also still src/PenguinSound/psound_test.dsp  - that should be
>>removed, right?
>
>Yes thats ok to remove. It has been moved to src/test/ .

Done.

>>>well. I also added a macro called ppEvilTrick to do what a lot of the
>>>other macros in debug.h were doing.
>
>>Looks good. The "FunPointer" argument to ppEvilTrick is a bit misleading as
>>it's really a function *name*.
>
>Its a function pointer isn't it?

I already had the "no" reply almost written, but you're right. It *is* a
pointer. Cool, I finally understood it :)
Ok, apologies.

>>(3)
>>391a397,400
>>>    if (fs == ppfFS_pak)
>>>       is_native = true;
>>>    else if (!is_native)
>>>       ToNative();
>
>>I'm not sure where to place this. Some context would be helpful. And I
>>highly doubt it's correct, as an URLInfo object converting itself to native
>>in the middle of a function doing something entirely different (ToAbsolute
>>() according to the line numbers) is dangerous at best. What did you want
>>do do with this?
>
>The problem has once again to do with the drive letter. ToAbsolute puts a
>'/' at the start but an absolute dos path has a drive letter at the start. I'm
>not exactly
>sure how to handle this except by converting to native before calling
>ToAbsolute.
>If put that but for ppfFS_pak in because other wise the function fails.
>testfile.cheese has to be a native path. This problem should be fixed somewhere
>else.

Yes. The CVS version should have that fixed.

>>(4)
>>764c780
>><        do { URL++; } while (*URL == '/');
>>---
>>>        //do { URL++; } while (*URL == '/');
>
>>That's in ParseBasics (). It's skipping the leading slashes. What's wrong
>>with it?
>
>I went through and tried to remove all the code that skipped the leading spaces.
>I guess I got paranoid when I saw some code did something like this
>URLInfo::Init("d/some/path")

*grin*

>There are a lot of warnings from the debugger about the memory being screwed up.
>This happens
>when you delete an object. MSVC initialises allocated memory with 'CD'. It also
>does a lot of other checks on
>allocated memory. Something is going wrong somewhere but I haven't found out
>where yet.

Hmm, perhaps some case of something being deleted twice, or an
uninitialized pointer being deleted. I had both cases in the code some time
ago. Perhaps there's another one.

>>PS: Did you get the mail from Karsten regarding CVS?
>
>yes. I tried  "cvs -d :pserver:pcburns@sunsite.auc.dk:/pack/anoncvs login" but I
>still couldn't commit.
>(I may have the CVSROOT wrong in this mail but I had it right when I tried it.

Did the login already give you some error? (the cmdline is correct)
According to Karsten you were logged in as anonymous - which also requires
a login action. Perhaps some stale CVSROOT variable? And perhaps a "cvs
logout" "cvs login" sequence helps...


	Christian
-- 

It's lonely in the saddle since the horse died...