mirror of
https://github.com/owntone/owntone-server.git
synced 2025-03-22 13:34:18 -04:00
[db] Add a free_query_params function
This commit is contained in:
parent
75b14b85e9
commit
b710d728f8
127
src/db.c
127
src/db.c
@ -451,6 +451,75 @@ free_mfi(struct media_file_info *mfi, int content_only)
|
|||||||
memset(mfi, 0, sizeof(struct media_file_info));
|
memset(mfi, 0, sizeof(struct media_file_info));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
free_pli(struct playlist_info *pli, int content_only)
|
||||||
|
{
|
||||||
|
if (!pli)
|
||||||
|
return;
|
||||||
|
|
||||||
|
free(pli->title);
|
||||||
|
free(pli->query);
|
||||||
|
free(pli->path);
|
||||||
|
free(pli->virtual_path);
|
||||||
|
|
||||||
|
if (!content_only)
|
||||||
|
free(pli);
|
||||||
|
else
|
||||||
|
memset(pli, 0, sizeof(struct playlist_info));
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
free_di(struct directory_info *di, int content_only)
|
||||||
|
{
|
||||||
|
if (!di)
|
||||||
|
return;
|
||||||
|
|
||||||
|
free(di->virtual_path);
|
||||||
|
|
||||||
|
if (!content_only)
|
||||||
|
free(di);
|
||||||
|
else
|
||||||
|
memset(di, 0, sizeof(struct directory_info));
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
free_query_params(struct query_params *qp, int content_only)
|
||||||
|
{
|
||||||
|
if (!qp)
|
||||||
|
return;
|
||||||
|
|
||||||
|
free(qp->filter);
|
||||||
|
|
||||||
|
if (!content_only)
|
||||||
|
free(qp);
|
||||||
|
else
|
||||||
|
memset(qp, 0, sizeof(struct query_params));
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
free_queue_item(struct db_queue_item *queue_item, int content_only)
|
||||||
|
{
|
||||||
|
if (!queue_item)
|
||||||
|
return;
|
||||||
|
|
||||||
|
free(queue_item->path);
|
||||||
|
free(queue_item->virtual_path);
|
||||||
|
free(queue_item->title);
|
||||||
|
free(queue_item->artist);
|
||||||
|
free(queue_item->album_artist);
|
||||||
|
free(queue_item->album);
|
||||||
|
free(queue_item->genre);
|
||||||
|
free(queue_item->artist_sort);
|
||||||
|
free(queue_item->album_sort);
|
||||||
|
free(queue_item->album_artist_sort);
|
||||||
|
free(queue_item->artwork_url);
|
||||||
|
|
||||||
|
if (!content_only)
|
||||||
|
free(queue_item);
|
||||||
|
else
|
||||||
|
memset(queue_item, 0, sizeof(struct db_queue_item));
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
unicode_fixup_mfi(struct media_file_info *mfi)
|
unicode_fixup_mfi(struct media_file_info *mfi)
|
||||||
{
|
{
|
||||||
@ -485,37 +554,6 @@ unicode_fixup_mfi(struct media_file_info *mfi)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
|
||||||
free_pli(struct playlist_info *pli, int content_only)
|
|
||||||
{
|
|
||||||
if (!pli)
|
|
||||||
return;
|
|
||||||
|
|
||||||
free(pli->title);
|
|
||||||
free(pli->query);
|
|
||||||
free(pli->path);
|
|
||||||
free(pli->virtual_path);
|
|
||||||
|
|
||||||
if (!content_only)
|
|
||||||
free(pli);
|
|
||||||
else
|
|
||||||
memset(pli, 0, sizeof(struct playlist_info));
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
|
||||||
free_di(struct directory_info *di, int content_only)
|
|
||||||
{
|
|
||||||
if (!di)
|
|
||||||
return;
|
|
||||||
|
|
||||||
free(di->virtual_path);
|
|
||||||
|
|
||||||
if (!content_only)
|
|
||||||
free(di);
|
|
||||||
else
|
|
||||||
memset(di, 0, sizeof(struct directory_info));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/* Unlock notification support */
|
/* Unlock notification support */
|
||||||
static void
|
static void
|
||||||
@ -1338,6 +1376,7 @@ db_query_start(struct query_params *qp)
|
|||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
qp->stmt = NULL;
|
qp->stmt = NULL;
|
||||||
|
qp->results = -1;
|
||||||
|
|
||||||
switch (qp->type)
|
switch (qp->type)
|
||||||
{
|
{
|
||||||
@ -1445,8 +1484,6 @@ db_query_end(struct query_params *qp)
|
|||||||
if (!qp->stmt)
|
if (!qp->stmt)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
qp->results = -1;
|
|
||||||
|
|
||||||
sqlite3_finalize(qp->stmt);
|
sqlite3_finalize(qp->stmt);
|
||||||
qp->stmt = NULL;
|
qp->stmt = NULL;
|
||||||
}
|
}
|
||||||
@ -3874,30 +3911,6 @@ db_speaker_clear_all(void)
|
|||||||
|
|
||||||
/* Queue */
|
/* Queue */
|
||||||
|
|
||||||
void
|
|
||||||
free_queue_item(struct db_queue_item *queue_item, int content_only)
|
|
||||||
{
|
|
||||||
if (!queue_item)
|
|
||||||
return;
|
|
||||||
|
|
||||||
free(queue_item->path);
|
|
||||||
free(queue_item->virtual_path);
|
|
||||||
free(queue_item->title);
|
|
||||||
free(queue_item->artist);
|
|
||||||
free(queue_item->album_artist);
|
|
||||||
free(queue_item->album);
|
|
||||||
free(queue_item->genre);
|
|
||||||
free(queue_item->artist_sort);
|
|
||||||
free(queue_item->album_sort);
|
|
||||||
free(queue_item->album_artist_sort);
|
|
||||||
free(queue_item->artwork_url);
|
|
||||||
|
|
||||||
if (!content_only)
|
|
||||||
free(queue_item);
|
|
||||||
else
|
|
||||||
memset(queue_item, 0, sizeof(struct db_queue_item));
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Returns the queue version from the admin table
|
* Returns the queue version from the admin table
|
||||||
*
|
*
|
||||||
|
9
src/db.h
9
src/db.h
@ -436,18 +436,21 @@ free_pi(struct pairing_info *pi, int content_only);
|
|||||||
void
|
void
|
||||||
free_mfi(struct media_file_info *mfi, int content_only);
|
free_mfi(struct media_file_info *mfi, int content_only);
|
||||||
|
|
||||||
void
|
|
||||||
unicode_fixup_mfi(struct media_file_info *mfi);
|
|
||||||
|
|
||||||
void
|
void
|
||||||
free_pli(struct playlist_info *pli, int content_only);
|
free_pli(struct playlist_info *pli, int content_only);
|
||||||
|
|
||||||
void
|
void
|
||||||
free_di(struct directory_info *di, int content_only);
|
free_di(struct directory_info *di, int content_only);
|
||||||
|
|
||||||
|
void
|
||||||
|
free_query_params(struct query_params *qp, int content_only);
|
||||||
|
|
||||||
void
|
void
|
||||||
free_queue_item(struct db_queue_item *queue_item, int content_only);
|
free_queue_item(struct db_queue_item *queue_item, int content_only);
|
||||||
|
|
||||||
|
void
|
||||||
|
unicode_fixup_mfi(struct media_file_info *mfi);
|
||||||
|
|
||||||
/* Maintenance and DB hygiene */
|
/* Maintenance and DB hygiene */
|
||||||
void
|
void
|
||||||
db_hook_post_scan(void);
|
db_hook_post_scan(void);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user