|
|
|
@ -1075,9 +1075,11 @@ TQStringData::~TQStringData() {
|
|
|
|
|
if ( unicode ) {
|
|
|
|
|
delete[] ((char*)unicode);
|
|
|
|
|
}
|
|
|
|
|
#if defined(Q_OS_LINUX)
|
|
|
|
|
if ( ascii && security_unpaged ) {
|
|
|
|
|
munlock(ascii, LINUX_MEMLOCK_LIMIT_BYTES);
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
if ( ascii ) {
|
|
|
|
|
delete[] ascii;
|
|
|
|
|
}
|
|
|
|
@ -5953,15 +5955,19 @@ const char* TQString::ascii() const
|
|
|
|
|
void TQString::setSecurityUnPaged(bool lock) {
|
|
|
|
|
if (lock != d->security_unpaged) {
|
|
|
|
|
if (d->security_unpaged) {
|
|
|
|
|
#if defined(Q_OS_LINUX)
|
|
|
|
|
if (d->ascii) {
|
|
|
|
|
munlock(d->ascii, LINUX_MEMLOCK_LIMIT_BYTES);
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
d->security_unpaged = false;
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
#if defined(Q_OS_LINUX)
|
|
|
|
|
if (d->ascii) {
|
|
|
|
|
mlock(d->ascii, LINUX_MEMLOCK_LIMIT_BYTES);
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
d->security_unpaged = true;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|