PIConfig adopt for PIIOString changes

This commit is contained in:
2024-04-05 20:41:07 +03:00
parent ee4d78d2e1
commit 021411defa

View File

@@ -334,7 +334,7 @@ bool PIConfig::open(const PIString & path, PIIODevice::DeviceMode mode) {
bool PIConfig::open(PIString * string, PIIODevice::DeviceMode mode) {
_destroy();
own_dev = true;
dev = new PIIOString(string, mode);
dev = new PIIOString(string, PIIODevice::ReadOnly);
_setupDev();
parse();
return true;
@@ -365,10 +365,7 @@ void PIConfig::_init() {
void PIConfig::_destroy() {
if (stream) {
delete stream;
stream = nullptr;
}
piDeleteSafety(stream);
if (own_dev && dev) delete dev;
dev = nullptr;
piForeach(PIConfig * c, inc_devs)
@@ -392,6 +389,7 @@ void PIConfig::_clearDev() {
}
if (PIString(dev->className()) == "PIIOString") {
((PIIOString *)dev)->clear();
((PIIOString *)dev)->setMode(PIIODevice::WriteOnly);
return;
}
}
@@ -419,6 +417,7 @@ void PIConfig::_seekToBeginDev() {
}
if (PIString(dev->className()) == "PIIOString") {
((PIIOString *)dev)->seekToBegin();
((PIIOString *)dev)->setMode(PIIODevice::ReadOnly);
return;
}
}