Fix integer overflow for scene size on 32bit systems (#994)

* Fix integer overflow for scene size on 32bit systems
* Cast to double in sqlite to prevent potential overflow
* Add migration to reset scene sizes and scan logic to repopulate if empty
This commit is contained in:
InfiniteTF
2020-12-22 00:29:53 +01:00
committed by GitHub
parent e883e5fe27
commit e84c92355e
9 changed files with 19 additions and 15 deletions

View File

@@ -246,8 +246,8 @@ func (qb *ImageQueryBuilder) Count() (int, error) {
return runCountQuery(buildCountQuery("SELECT images.id FROM images"), nil)
}
func (qb *ImageQueryBuilder) Size() (uint64, error) {
return runSumQuery("SELECT SUM(size) as sum FROM images", nil)
func (qb *ImageQueryBuilder) Size() (float64, error) {
return runSumQuery("SELECT SUM(cast(size as double)) as sum FROM images", nil)
}
func (qb *ImageQueryBuilder) CountByStudioID(studioID int) (int, error) {