summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--txtrecv.c6
-rw-r--r--txtrecv.h2
2 files changed, 3 insertions, 5 deletions
diff --git a/txtrecv.c b/txtrecv.c
index d896441..4395daa 100644
--- a/txtrecv.c
+++ b/txtrecv.c
@@ -105,7 +105,6 @@ Storage::StorageSystem Storage::system = Storage::StorageSystemPacked;
Storage::Storage() {
s_self=this;
byteCount=0;
- currentDir=0;
storageOption=-1;
failedFreeSpace=false;
}
@@ -191,9 +190,8 @@ void Storage::getFilename(char *buffer, int bufLength, PageID page) {
}
void Storage::prepareDirectory(tChannelID chan) {
- free(currentDir);
- if (asprintf(&currentDir, "%s/%s", root, *chan.ToString()) == -1 ||
- !MakeDirs(currentDir, 1)) {
+ currentDir = cString::sprintf("%s/%s", root, *chan.ToString());
+ if (!MakeDirs(currentDir, 1)) {
esyslog("OSD-Teletext: Error preparing directory for channel \"%s\"",
*chan.ToString());
return;
diff --git a/txtrecv.h b/txtrecv.h
index 927350d..3ea26da 100644
--- a/txtrecv.h
+++ b/txtrecv.h
@@ -84,7 +84,7 @@ protected:
bool exists(const char* file);
long byteCount;
- char *currentDir;
+ cString currentDir;
private:
static StorageSystem system;
int storageOption;