Crashing

I've been using SoulseekQT since its release and have never had so much as an issue with crashing. If it did crash, it would go right back up afterward.

I was using Soulseek QT last week with no problems at all, but when I started some downloads today, the program crashed after a few minutes. I tried uninstalling/reinstalling, read the previous crash reports, spent hours trying to figure out how to get the drmingw thing to work, which I finally did.

The last two times I logged in, I wasn't even on for a full minute before it crashed. This is the last report I received:

SoulseekQt.exe caused an Access Violation at location 00630008 in module SoulseekQt.exe Writing to location 060c378d.

Registers:
eax=6a41027a ebx=00000000 ecx=ffffff02 edx=035ad388 esi=035a9d88 edi=0028d534
eip=00630008 esp=68000000 ebp=0028d4fc iopl=0 nv up ei pl nz na pe nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00210202

Call stack:
00630008 SoulseekQt.exe:00630008 operator+ qstring.h:1022
struct QString operator+(
struct QString * s1 = ,
struct Data shared_null = {
struct QBasicAtomicInt ref = {
union ._60 = {
long int _q_value = -424458663
}
},
int32 alloc = 16812975,
int32 size = -1114130,
ushort * data = 0x00000000,
ushort clean,
ushort simpletext,
ushort righttoleft,
ushort asciiCache,
ushort capacity,
ushort reserved,
ushortuint32[] array = (array)
},
struct Data shared_empty = {
struct QBasicAtomicInt ref = {
union ._60 = {
long int _q_value = -424458663
}
},
int32 alloc = 16812975,
int32 size = -1114130,
ushort * data = 0x00000000,
ushort clean,
ushort simpletext,
ushort righttoleft,
ushort asciiCache,
ushort capacity,
ushort reserved,
ushortuint32[] array = (array)
},
struct Data * d = 0xe6b34659,
struct QTextCodec * codecForCStrings = 0xe6b34659
},
struct QString * s2 = ,
struct Data shared_null = {
struct QBasicAtomicInt ref = {
union ._60 = {
long int _q_value =
}
},
int32 alloc = ,
int32 size = ,
ushort * data = ,
ushort clean,
ushort simpletext,
ushort righttoleft,
ushort asciiCache,
ushort capacity,
ushort reserved,
ushortuint32[] array = (array)
},
struct Data shared_empty = {
struct QBasicAtomicInt ref = {
union ._60 = {
long int _q_value =
}
},
int32 alloc = ,
int32 size = ,
ushort * data = ,
ushort clean,
ushort simpletext,
ushort righttoleft,
ushort asciiCache,
ushort capacity,
ushort reserved,
ushortuint32[] array = (array)
},
struct Data * d = ,
struct QTextCodec * codecForCStrings =
}
)struct QString operator+(
struct QString * s1 = ,
struct Data shared_null = {
struct QBasicAtomicInt ref = {
union ._59 = {
long int _q_value = -424458663
}
},
int32 alloc = 16812975,
int32 size = -1114130,
ushort * data = 0x00000000,
ushort clean,
ushort simpletext,
ushort righttoleft,
ushort asciiCache,
ushort capacity,
ushort reserved,
ushortuint32[] array = (array)
},
struct Data shared_empty = {
struct QBasicAtomicInt ref = {
union ._59 = {
long int _q_value = -424458663
}
},
int32 alloc = 16812975,
int32 size = -1114130,
ushort * data = 0x00000000,
ushort clean,
ushort simpletext,
ushort righttoleft,
ushort asciiCache,
ushort capacity,
ushort reserved,
ushortuint32[] array = (array)
},
struct Data * d = 0xe6b34659,
struct QTextCodec * codecForCStrings = 0xe6b34659
},
struct QString * s2 = ,
struct Data shared_null = {
struct QBasicAtomicInt ref = {
union ._59 = {
long int _q_value =
}
},
int32 alloc = ,
int32 size = ,
ushort * data = ,
ushort clean,
ushort simpletext,
ushort righttoleft,
ushort asciiCache,
ushort capacity,
ushort reserved,
ushortuint32[] array = (array)
},
struct Data shared_empty = {
struct QBasicAtomicInt ref = {
union ._59 = {
long int _q_value =
}
},
int32 alloc = ,
int32 size = ,
ushort * data = ,
ushort clean,
ushort simpletext,
ushort righttoleft,
ushort asciiCache,
ushort capacity,
ushort reserved,
ushortuint32[] array = (array)
},
struct Data * d = ,
struct QTextCodec * codecForCStrings =
}
)struct QString operator+(
struct QString * s1 = ,
struct Data shared_null = {
struct QBasicAtomicInt ref = {
union ._60 = {
long int _q_value = -424458663
}
},
int32 alloc = 16812975,
int32 size = -1114130,
ushort * data = 0x00000000,
ushort clean,
ushort simpletext,
ushort righttoleft,
ushort asciiCache,
ushort capacity,
ushort reserved,
ushortuint32[] array = (array)
},
struct Data shared_empty = {
struct QBasicAtomicInt ref = {
union ._60 = {
long int _q_value = -424458663
}
},
int32 alloc = 16812975,
int32 size = -1114130,
ushort * data = 0x00000000,
ushort clean,
ushort simpletext,
ushort righttoleft,
ushort asciiCache,
ushort capacity,
ushort reserved,
ushortuint32[] array = (array)
},
struct Data * d = 0xe6b34659,
struct QTextCodec * codecForCStrings = 0xe6b34659
},
struct QString * s2 = ,
struct Data shared_null = {
struct QBasicAtomicInt ref = {
union ._60 = {
long int _q_value =
}
},
int32 alloc = ,
int32 size = ,
ushort * data = ,
ushort clean,
ushort simpletext,
ushort righttoleft,
ushort asciiCache,
ushort capacity,
ushort reserved,
ushortuint32[] array = (array)
},
struct Data shared_empty = {
struct QBasicAtomicInt ref = {
union ._60 = {
long int _q_value =
}
},
int32 alloc = ,
int32 size = ,
ushort * data = ,
ushort clean,
ushort simpletext,
ushort righttoleft,
ushort asciiCache,
ushort capacity,
ushort reserved,
ushortuint32[] array = (array)
},
struct Data * d = ,
struct QTextCodec * codecForCStrings =
}
)

Thanks for any help in advance.

Hmm, I'm not seeing anything specific to the SoulseekQt code in there. Maybe I can replicate this crash if I have your client data file. On Windows that's soulseek-client.dat, you might have to search for it. Once you have it can you please make a copy named FreshOats.dat and drop it at http://www.dropitto.me/nirslsk (password is slskdrop)

Thanks, Nir