|
Joined: Jan 2003
Posts: 2,973
Hoopy frood
|
OP
Hoopy frood
Joined: Jan 2003
Posts: 2,973 |
Well, for the past day or so I've had an irc clone using sockets to connect to the server. Its been going fine, and eching to a dialog, and I can send data or a message, track nicklists, kicks, etc (i now have a much better respect for khaled's ability to deal with all these values).
But anywas, I just was about to do the normal send text to channel event i have done in the past, and mirc crashed. I'm not sure why yet, but Im looking into it, to see if i can duplicate it with a series of definate steps.
Here is what the windows XP even viewer returns:
The crash: Faulting application mirc.exe, version 6.0.3.0, faulting module ntdll.dll, version 5.1.2600.114, fault address 0x0003cefb.
And the DrWatson follow up: The application, C:\ktscript\mirc.exe, generated an application error The error occurred on 06/10/2003 @ 04:34:05.246 The exception generated was c0000005 at address 77F8CEFB (ntdll!RtlReAllocateHeap)
The heap sounds more like a hash table tho, but anyways--anyone else ever have a bogus crash such as this?
|
|
|
|
codemastr
|
codemastr
|
The "heap" is not a hash table, in fact it's a heap (suprise!). THE heap, is the place where the OS keeps track of free memory that programs can request and releast. If you get an error like that it usually indicates some form of heap corruption, meaning mIRC is either writing to or reading from memory it is not allowed to. Looking at the output you have there, 0x0003cefb is definately an address mIRC shouldn't be touching. Are you able to reproduce the problem? If so can you isolate the script code that caused it, meaning remove an alias see if it still happens, until you get down to just one alias/event left. Also what OS, you just said "Windows XP" but is it Home, Professional, etc?
|
|
|
|
Joined: Jan 2003
Posts: 2,973
Hoopy frood
|
OP
Hoopy frood
Joined: Jan 2003
Posts: 2,973 |
Thats what Im working on now, is to isolate it. I am on windows XP Profession, and thos emessages are from my event viewer. Here is exactyl what i did to crash it (i haven't tryed it again yet tho, but i'll tell you if it happens again).
I had the clone up (socket clone using a dialog for output, that has been up easly 12 hours--no problems). I then worked ona swear kick for a user ont he forums with the hash tables. Made a dialog for that. (i only mention the hash table project because i know it can be memory intensive and have some effect on this event) As I said, the dialog was simple. It listed the words, and what action to take if each word is said. I made it so you could cancel and have no changes made (by saving the hash when the dialog is open, then if cancel is pressed--free the hash, and reload from hard-copy).
Welll, i must have reloaded the hash about maybe 4 times (checking if cancel work properly) that itself going from using memory to freeing to using to freeing may have contributed.
Anyways, I go back to the clone, and get ready to type a message in the text box, and boom. "Windows detected an error in mirc--would u like to send the error to microsoft..blah blah"
Again, im stil trying to replicate it as of now.
|
|
|
|
Joined: Apr 2003
Posts: 426
Fjord artisan
|
Fjord artisan
Joined: Apr 2003
Posts: 426 |
Why not create a "Save" or "Update" or even an "Apply" button, as well as the cancel? And when they click on this button, it saves changes to the hash table, and saves the hardcopy?
Then when they click cancel, you don't need to reload from a hardcopy of the hash table and free the existing hash table?
|
|
|
|
Joined: Jan 2003
Posts: 2,973
Hoopy frood
|
OP
Hoopy frood
Joined: Jan 2003
Posts: 2,973 |
I do have 1.
|
|
|
|
|