![]() |
Re: SWDS.dll Crashes.
oh ok...
the CBaseStuff is always located behind the edict_s pvPrivateData pointer, right ? Code:
struct edict_s well wouldn't it be possible that you do it yourself (i.e malloc() some space behind this pointer and zero it out), not forgetting to free it when you set the FL_KILLME flag ? That would be wasted space, but could probably prevent it to crash. If you know the address of the entvars struct for that entity, you can safely deduce the address of its pvPrivateData pointer too ( -4 ). I'd investigate there... |
Re: SWDS.dll Crashes.
Problem with doing that is the mod might try to access it and think its cbaseentity, when its not.
|
Re: SWDS.dll Crashes.
Im just guessing now..
hmm, did you set "free" to 1 (in edict_s of entity) ? :) Does that make it think that its not a valid entity and can be overwritten when making new entities? |
Re: SWDS.dll Crashes.
Quote:
|
Re: SWDS.dll Crashes.
Quote:
Once this runs you can then trace manually to figure out what the mod reads and writes there and you'll understand why it needs this CBaseEntity pointer. You will then be able to provide it with better failsafe mechanisms. |
Re: SWDS.dll Crashes.
Quote:
I'm thinking it just might be something with the specific entity (which I have others that dont seem to crash and are used a fair amount of times). So I'm gonna look into that. |
Re: SWDS.dll Crashes.
I bet it's something stupid like this:
Code:
CEBaseEntity *newhive = new CHive |
All times are GMT +2. The time now is 00:32. |
Powered by vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.