summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--database/database.cpp7
-rw-r--r--database/database.h4
-rw-r--r--database/metadata.cpp8
-rw-r--r--database/object.cpp2
4 files changed, 17 insertions, 4 deletions
diff --git a/database/database.cpp b/database/database.cpp
index 9c08c00..fa2e9b8 100644
--- a/database/database.cpp
+++ b/database/database.cpp
@@ -134,7 +134,12 @@ bool cRow::fetchColumn(char** Column, char** Value){
MESSAGE("Fetching column %s='%s' (%d/%d)", this->Columns[currentCol], this->Values[currentCol], currentCol+1, this->ColCount);
#endif
*Column = strdup0(this->Columns[currentCol]);
- *Value = strcasecmp(this->Values[currentCol],"NULL")?strdup0(this->Values[currentCol]):NULL;
+ if(this->Values[currentCol]){
+ *Value = strcasecmp(this->Values[currentCol],"NULL")?strdup0(this->Values[currentCol]):NULL;
+ }
+ else {
+ *Value = NULL;
+ }
currentCol++;
return true;
}
diff --git a/database/database.h b/database/database.h
index 24e8bd1..49c208d 100644
--- a/database/database.h
+++ b/database/database.h
@@ -12,8 +12,8 @@
#include <vdr/tools.h>
#include "../common.h"
-//#define SQLITE_PRINT_STATEMENTS
-//#define SQLITE_PRINT_FETCHES
+#define SQLITE_PRINT_STATEMENTS
+#define SQLITE_PRINT_FETCHES
#define SQLITE_CASCADE_DELETES
#define PK_OBJECTS TOSTRING(1)
diff --git a/database/metadata.cpp b/database/metadata.cpp
index bf99e82..8ea43dc 100644
--- a/database/metadata.cpp
+++ b/database/metadata.cpp
@@ -306,6 +306,10 @@ int cMediaDatabase::loadChannels(){
}
MESSAGE("Successfuly added channel");
}
+ else {
+ // Delete temporarily created object with no resource
+ this->mFactory->deleteObject(ChannelItem);
+ }
}
}
else {
@@ -367,6 +371,10 @@ int cMediaDatabase::loadRecordings(){
}
MESSAGE("Successfuly added movie");
}
+ else {
+ // Delete temporarily created object with no resource
+ this->mFactory->deleteObject(MovieItem);
+ }
}
else {
MESSAGE("Skipping %s, already in Database", Recording->FileName());
diff --git a/database/object.cpp b/database/object.cpp
index 6683dd2..1ef4fe2 100644
--- a/database/object.cpp
+++ b/database/object.cpp
@@ -1544,7 +1544,7 @@ int cUPnPContainerMediator::databaseToObject(cUPnPClassObject* Object, cUPnPObje
Class.ID = strdup0(*Value);
}
else if(!strcasecmp(Column, SQLITE_COL_CLASSDERIVED)){
- Class.includeDerived = atoi(Value)==1?"true":"false";
+ Class.includeDerived = atoi(Value)==1?true:false;
}
}
SearchClasses.push_back(Class);