- The wma decoder and audio format handler now correctly decodes
files with unusual block sizes.
- We now compile with -Wformat-signedness if possible.
+- The touch command now refuses to set an invalid image or lyrics ID.
Download: [tarball](./releases/paraslash-git.tar.bz2)
- para_gui no longer reports 100% playing time at the stream start.
- Opus cleanups.
+Downloads:
[tarball](./releases/paraslash-0.5.6.tar.bz2),
[signature](./releases/paraslash-0.5.6.tar.bz2.asc)
.data = aca,
.action = touch_audio_file
};
+ if (cto->image_id >= 0) {
+ ret = img_get_name_by_id(cto->image_id, NULL);
+ if (ret < 0) {
+ para_printf(&aca->pbout, "invalid image ID: %d\n",
+ cto->image_id);
+ return ret;
+ }
+ }
+ if (cto->lyrics_id >= 0) {
+ ret = lyr_get_name_by_id(cto->lyrics_id, NULL);
+ if (ret < 0) {
+ para_printf(&aca->pbout, "invalid lyrics ID: %d\n",
+ cto->lyrics_id);
+ return ret;
+ }
+ }
if (cto->flags & TOUCH_FLAG_FNM_PATHNAME)
pmd.fnmatch_flags |= FNM_PATHNAME;
ret = for_each_matching_row(&pmd);
struct osl_object obj = {.data = &id, .size = sizeof(id)};
int ret;
- *name = NULL;
+ if (name)
+ *name = NULL;
if (!id)
return 1;
ret = osl(osl_get_row(table, BLOBCOL_ID, &obj, &row));
return ret;
if (*(char *)obj.data == '\0')
return -E_DUMMY_ROW;
- *name = (char *)obj.data;
+ if (name)
+ *name = (char *)obj.data;
return 1;
}