new: full implementation of remove and install functions
This commit is contained in:
@ -147,16 +147,16 @@ bool lm_database_package_next(lm_database_t *db, lm_pkg_t *pkg){
|
||||
return false;
|
||||
}
|
||||
|
||||
if(NULL == db->packages_st &&
|
||||
if(NULL != db->packages_st)
|
||||
lm_package_free(pkg);
|
||||
|
||||
else if(NULL == db->packages_st &&
|
||||
sqlite3_prepare(db->packages_db, queries[QUERY_SELECT_PACKAGE_ALL], strlen(queries[QUERY_SELECT_PACKAGE_ALL]), &db->packages_st, NULL) != SQLITE_OK){
|
||||
pdebug(__func__, "failed to prepare statement for selecting all: %s", sqlite3_errmsg(db->packages_db));
|
||||
lm_error_set(LM_ERR_DbSqlPrepareFail);
|
||||
return false;
|
||||
}
|
||||
|
||||
else if(NULL != db->packages_st)
|
||||
lm_package_free(pkg);
|
||||
|
||||
if(sqlite3_step(db->packages_st) != SQLITE_ROW){
|
||||
sqlite3_finalize(db->packages_st);
|
||||
db->packages_st = NULL;
|
||||
@ -186,8 +186,10 @@ void lm_database_package_next_free(lm_database_t *db, lm_pkg_t *pkg){
|
||||
return;
|
||||
}
|
||||
|
||||
if(NULL != db->packages_st)
|
||||
if(NULL != db->packages_st){
|
||||
sqlite3_finalize(db->packages_st);
|
||||
db->packages_st = NULL;
|
||||
}
|
||||
|
||||
if(NULL != pkg)
|
||||
lm_package_free(pkg);
|
||||
|
Reference in New Issue
Block a user