int mc_db_update_playback_info(const char *server_name, const media_controller_playback_s playback)
{
int ret = MEDIA_CONTROLLER_ERROR_NONE;
+ char *_query = NULL;
char *sql_str = NULL;
- mc_retvm_if(server_name == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "server_name is NULL");
+ mc_retvm_if(!server_name, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Invalid server_name");
+
+ _query = sqlite3_mprintf("UPDATE '%q' SET playback_state=%d, playback_position=%llu, playlist_name=%Q, playlist_index=%Q, playback_content_type=%d, age_rating=%d;",
+ server_name, playback.state, playback.position, playback.playlist_name, playback.index, playback.content_type, playback.age_rating);
- sql_str = g_strdup_printf("%s%s%s%s%d%s%llu%s%s%s%s%s%d%s%d", MC_DB_CMD_UPDATE_PLAYBACK, MC_STRING_DELIMITER,
- server_name, MC_STRING_DELIMITER,
- playback.state, MC_STRING_DELIMITER,
- playback.position, MC_STRING_DELIMITER,
- playback.playlist_name, MC_STRING_DELIMITER,
- playback.index, MC_STRING_DELIMITER,
- playback.content_type, MC_STRING_DELIMITER,
- playback.age_rating);
- mc_retvm_if(sql_str == NULL, MEDIA_CONTROLLER_ERROR_INVALID_OPERATION, "fail making sql_str");
+ sql_str = g_strdup_printf("%s%s%s", MC_DB_CMD_UPDATE_PLAYBACK, MC_STRING_DELIMITER, _query);
ret = __mc_db_update_db(MC_PRIV_TYPE_SERVER, sql_str);
+ SQLITE3_SAFE_FREE(_query);
MC_SAFE_FREE(sql_str);
return ret;
const char *copyright, const char *description, const char *track_num, const char *picture)
{
int ret = MEDIA_CONTROLLER_ERROR_NONE;
+ char *_query = NULL;
char *sql_str = NULL;
- mc_retvm_if(server_name == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "server_name is NULL");
+ mc_retvm_if(!server_name, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Invalid server_name");
- sql_str = g_strdup_printf("%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s", MC_DB_CMD_UPDATE_META, MC_STRING_DELIMITER, server_name, MC_STRING_DELIMITER,
- title, MC_STRING_DELIMITER,
- artist, MC_STRING_DELIMITER,
- album, MC_STRING_DELIMITER,
- author, MC_STRING_DELIMITER,
- genre, MC_STRING_DELIMITER,
- duration, MC_STRING_DELIMITER,
- date, MC_STRING_DELIMITER,
- copyright, MC_STRING_DELIMITER,
- description, MC_STRING_DELIMITER,
- track_num, MC_STRING_DELIMITER,
- picture);
+ _query = sqlite3_mprintf("UPDATE '%q' SET title=%Q, artist=%Q, album=%Q, author=%Q, genre=%Q, duration=%Q, date=%Q, copyright=%Q, description=%Q, track_num=%Q, picture=%Q;",
+ server_name, title, artist, album, author, genre, duration, date, copyright, description, track_num, picture);
+ sql_str = g_strdup_printf("%s%s%s", MC_DB_CMD_UPDATE_META, MC_STRING_DELIMITER, _query);
ret = __mc_db_update_db(MC_PRIV_TYPE_SERVER, sql_str);
+ SQLITE3_SAFE_FREE(_query);
MC_SAFE_FREE(sql_str);
return ret;
int ret = MEDIA_CONTROLLER_ERROR_NONE;
char *sql_str = NULL;
- mc_retvm_if(server_name == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "server_name is NULL");
+ mc_retvm_if(!server_name, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Invalid server_name");
sql_str = g_strdup_printf("%s%s%s%s%d", MC_DB_CMD_UPDATE_SHUFFLE, MC_STRING_DELIMITER, server_name, MC_STRING_DELIMITER, shuffle_mode);
int ret = MEDIA_CONTROLLER_ERROR_NONE;
char *sql_str = NULL;
- mc_retvm_if(server_name == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "server_name is NULL");
+ mc_retvm_if(!server_name, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Invalid server_name");
sql_str = g_strdup_printf("%s%s%s%s%d", MC_DB_CMD_UPDATE_REPEAT, MC_STRING_DELIMITER, server_name, MC_STRING_DELIMITER, repeat_mode);
int ret = MEDIA_CONTROLLER_ERROR_NONE;
char *sql_str = NULL;
- mc_retvm_if(server_name == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "server_name is NULL");
- mc_retvm_if(uri == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "uri is NULL");
+ mc_retvm_if(!server_name, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Invalid server_name");
+ mc_retvm_if(!uri, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Invalid uri");
sql_str = g_strdup_printf("%s%s%s%s%s", MC_DB_CMD_UPDATE_ICON, MC_STRING_DELIMITER, server_name, MC_STRING_DELIMITER, uri);
int ret = MEDIA_CONTROLLER_ERROR_NONE;
char *sql_str = NULL;
- mc_retvm_if(server_name == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "server_name is NULL");
+ mc_retvm_if(!server_name, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Invalid server_name");
sql_str = g_strdup_printf("%s%s%s%s%llu%s%llu", MC_DB_CMD_UPDATE_ABILITY, MC_STRING_DELIMITER, server_name, MC_STRING_DELIMITER, (unsigned long long)ability_supported.decided, MC_STRING_DELIMITER, (unsigned long long)ability_supported.supported);
int ret = MEDIA_CONTROLLER_ERROR_NONE;
char *sql_str = NULL;
- mc_retvm_if(server_name == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "server_name is NULL");
+ mc_retvm_if(!server_name, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Invalid server_name");
sql_str = g_strdup_printf("%s%s%s", MC_DB_CMD_CREATE_SERVER, MC_STRING_DELIMITER, server_name);
int ret = MEDIA_CONTROLLER_ERROR_NONE;
char *sql_str = NULL;
- mc_retvm_if(server_name == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "server_name is NULL");
+ mc_retvm_if(!server_name, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Invalid server_name");
sql_str = g_strdup_printf("%s%s%s", MC_DB_CMD_REMOVE_SERVER, MC_STRING_DELIMITER, server_name);
int ret = MEDIA_CONTROLLER_ERROR_NONE;
char *sql_str = NULL;
- mc_retvm_if(server_name == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "server_name is NULL");
+ mc_retvm_if(!server_name, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Invalid server_name");
sql_str = g_strdup_printf("%s%s%s%s%d%s%d", MC_DB_CMD_UPDATE_STATE_PLAYBACK, MC_STRING_DELIMITER, server_name, MC_STRING_DELIMITER, server_state, MC_STRING_DELIMITER, playback_state);
int ret = MEDIA_CONTROLLER_ERROR_NONE;
char *sql_str = NULL;
- mc_retvm_if(server_name == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "server_name is NULL");
+ mc_retvm_if(!server_name, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Invalid server_name");
sql_str = g_strdup_printf("%s%s%s", MC_DB_CMD_UPDATE_LATEST, MC_STRING_DELIMITER, server_name);
int ret = MEDIA_CONTROLLER_ERROR_NONE;
char *sql_str = NULL;
- mc_retvm_if(server_name == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "server_name is NULL");
+ mc_retvm_if(!server_name, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Invalid server_name");
+ mc_retvm_if(!playlist_name, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Invalid playlist_name");
sql_str = g_strdup_printf("%s%s%s%s%s", MC_DB_CMD_REMOVE_PLAYLIST, MC_STRING_DELIMITER, server_name, MC_STRING_DELIMITER, playlist_name);
gchar **params = NULL;
int i_value = 0;
int i_value_1 = 0;
- int i_value_2 = 0;
unsigned long long llu_value = 0, llu_value2 = 0;
void* _db_handle = NULL;
- bool is_playlist = FALSE;
+ gboolean is_query_from_client = FALSE;
mc_retvm_if(data == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "data is NULL");
mc_retvm_if(data_size <= 0 , MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "invalid data_size");
sql_str = sqlite3_mprintf(DB_UPDATE_STATE_PLAYBACK, params[1], i_value, i_value_1);
} else if (strncmp(MC_DB_CMD_UPDATE_PLAYBACK, params[0], strlen(MC_DB_CMD_UPDATE_PLAYBACK)) == 0) {
- if (params[2] == NULL || params[3] == NULL || params[4] == NULL || params[5] == NULL || params[6] == NULL) {
- mc_error("wrong query");
- ret = MEDIA_CONTROLLER_ERROR_INVALID_OPERATION;
- goto ERROR;
- }
-
- mc_safe_strtoi(params[2], &i_value);
- mc_safe_strtoull(params[3], &llu_value);
- mc_safe_strtoi(params[6], &i_value_1);
- mc_safe_strtoi(params[7], &i_value_2);
- sql_str = sqlite3_mprintf("UPDATE '%q' SET playback_state=%d, playback_position=%llu, playlist_name=%Q, playlist_index=%Q, playback_content_type=%d, age_rating=%d;",
- params[1], i_value, llu_value, params[4], params[5], i_value_1, i_value_2);
+ sql_str = params[1];
+ is_query_from_client = TRUE;
} else if (strncmp(MC_DB_CMD_UPDATE_META, params[0], strlen(MC_DB_CMD_UPDATE_META)) == 0) {
- sql_str = sqlite3_mprintf("UPDATE '%q' SET title=%Q, artist=%Q, album=%Q, author=%Q, genre=%Q, duration=%Q, date=%Q, copyright=%Q, description=%Q, track_num=%Q, picture=%Q",
- params[1], params[2], params[3], params[4], params[5], params[6], params[7], params[8], params[9], params[10], params[11], params[12]);
+ sql_str = params[1];
+ is_query_from_client = TRUE;
} else if (strncmp(MC_DB_CMD_UPDATE_SHUFFLE, params[0], strlen(MC_DB_CMD_UPDATE_SHUFFLE)) == 0) {
if (params[2] == NULL) {
goto ERROR;
}
sql_str = params[3];
- is_playlist = TRUE;
+ is_query_from_client = TRUE;
} else if (strncmp(MC_DB_CMD_UPDATE_ICON, params[0], strlen(MC_DB_CMD_UPDATE_ICON)) == 0) {
if (params[2] == NULL) {
mc_db_util_disconnect(_db_handle);
- if (!is_playlist)
+ if (!is_query_from_client)
SQLITE3_SAFE_FREE(sql_str);
}