Developer forums (C::B DEVELOPMENT STRICTLY!) > Plugins development

unknown exception

<< < (15/17) > >>

280Z28:

--- Quote from: grv575 on December 17, 2005, 08:21:23 am ---OK, not aware of that discussion, but I figure that those changes can just be ignored if not desired.  At least the patch for this crash is ready to be integrated into the tree once devs have verified.

--- End quote ---

I say go back to the directives. Variables didn't work once, there's a patch ready that does work with directives, why spend any more time on it? :)

You want to be the one to put it on SF? haha  :lol:

Edit: For what I was talking about, see replies 57, 58 in this thread.

thomas:
I have committed my patch to main.cpp along with grv575's modification to crc32.cpp.

I don't like mangling FromString() through FromBytes(), as it introduces unnecessary indirection and works on char pointers instead of using safe string ops.
Replacing long by int in the crc table does not make anything better. These are logically different types, but exactly the same on all modern architectures. And on older architectures, int would acutally break that particular code.
It means rewriting the whole function and the functions calling it with no noticeable difference (identical executable).
Besides, it is tinyXML which uses signed variables and introduces the minus sign in the xml, consequentially. There is nothing we can do about that short of either rewriting tinyXML or converting the CRC to a string. Neither solution is required or advisable, though.

The changes regarding reverting appglobals.h to using macros are also not committed because that makes no sense at all. Yiannis changed the #defines to const wxStrings to get rid of some macros.
If there is a problem in some code using the constants (about box, for example), then that code should be adjusted.

280Z28:

--- Quote from: thomas on December 17, 2005, 02:44:42 pm ---I have committed my patch to main.cpp along with grv575's modification to crc32.cpp.

I don't like mangling FromString() through FromBytes(), as it introduces unnecessary indirection and works on char pointers instead of using safe string ops.
Replacing long by int in the crc table does not make anything better. These are logically different types, but exactly the same on all modern architectures. And on older architectures, int would acutally break that particular code.
It means rewriting the whole function and the functions calling it with no noticeable difference (identical executable).
Besides, it is tinyXML which uses signed variables and introduces the minus sign in the xml, consequentially. There is nothing we can do about that short of either rewriting tinyXML or converting the CRC to a string. Neither solution is required or advisable, though.

The changes regarding reverting appglobals.h to using macros are also not committed because that makes no sense at all. Yiannis changed the #defines to const wxStrings to get rid of some macros.
If there is a problem in some code using the constants (about box, for example), then that code should be adjusted.

--- End quote ---

Long and int are different on 64bit platforms, and as such broke one of our math libraries. :( If you know it's a 32bit answer you want, you need to use int. long is 64bits on 64bit platforms.

thomas:
My two Athlon64 PCs and my Turion64 notebook don't seem to know that.

Anyway, that can be adressed at a later time separately.

Urxae:

--- Quote from: thomas on December 17, 2005, 02:44:42 pm ---Besides, it is tinyXML which uses signed variables and introduces the minus sign in the xml, consequentially. There is nothing we can do about that short of either rewriting tinyXML or converting the CRC to a string. Neither solution is required or advisable, though.

--- End quote ---

Why not convert it to a string? There shouldn't be a performance disadvantage as tinyXML would otherwise do that anyway, right? So what's the problem with moving that conversion to C::B itself where you know the CRC is unsigned and will handle it properly?

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version