mirror of
https://github.com/owntone/owntone-server.git
synced 2025-11-10 14:09:51 -05:00
[db,scan,jsonapi] bug fix to handle date_released before 1970, storing -ve values in db
This commit is contained in:
@@ -98,7 +98,8 @@ parse_date(struct media_file_info *mfi, char *date_string)
|
||||
{
|
||||
char year_string[32];
|
||||
uint32_t *year = (uint32_t *) ((char *) mfi + mfi_offsetof(year));
|
||||
uint32_t *date_released = (uint32_t *) ((char *) mfi + mfi_offsetof(date_released));
|
||||
// signed in db.h to handle dates before 1970
|
||||
int64_t *date_released = (int64_t *) ((char *) mfi + mfi_offsetof(date_released));
|
||||
struct tm tm = { 0 };
|
||||
int ret = 0;
|
||||
|
||||
@@ -111,7 +112,7 @@ parse_date(struct media_file_info *mfi, char *date_string)
|
||||
|| strptime(date_string, "%F", &tm)
|
||||
)
|
||||
{
|
||||
*date_released = (uint32_t)mktime(&tm);
|
||||
*date_released = mktime(&tm);
|
||||
ret++;
|
||||
}
|
||||
|
||||
@@ -120,7 +121,7 @@ parse_date(struct media_file_info *mfi, char *date_string)
|
||||
snprintf(year_string, sizeof(year_string), "%" PRIu32 "-01-01T12:00:00", *year);
|
||||
if (strptime(year_string, "%FT%T", &tm))
|
||||
{
|
||||
*date_released = (uint32_t)mktime(&tm);
|
||||
*date_released = mktime(&tm);
|
||||
ret++;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user