mirror of
				https://github.com/mihonapp/mihon.git
				synced 2025-10-30 22:07:57 +01:00 
			
		
		
		
	ChapterSourceSync: set default timestamp to max timestamp (#7197)
(cherry picked from commit dd5da56695)
			
			
This commit is contained in:
		| @@ -11,6 +11,7 @@ import uy.kohesive.injekt.Injekt | ||||
| import uy.kohesive.injekt.api.get | ||||
| import java.util.Date | ||||
| import java.util.TreeSet | ||||
| import kotlin.math.max | ||||
|  | ||||
| /** | ||||
|  * Helper method for syncing the list of chapters from the source with the ones from the database. | ||||
| @@ -59,6 +60,9 @@ fun syncChaptersWithSource( | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     var maxTimestamp = 0L // in previous chapters to add | ||||
|     val rightNow = Date().time | ||||
|  | ||||
|     for (sourceChapter in sourceChapters) { | ||||
|         // This forces metadata update for the main viewable things in the chapter list. | ||||
|         if (source is HttpSource) { | ||||
| @@ -72,7 +76,9 @@ fun syncChaptersWithSource( | ||||
|         // Add the chapter if not in db already, or update if the metadata changed. | ||||
|         if (dbChapter == null) { | ||||
|             if (sourceChapter.date_upload == 0L) { | ||||
|                 sourceChapter.date_upload = Date().time | ||||
|                 sourceChapter.date_upload = if (maxTimestamp == 0L) rightNow else maxTimestamp | ||||
|             } else { | ||||
|                 maxTimestamp = max(maxTimestamp, sourceChapter.date_upload) | ||||
|             } | ||||
|             toAdd.add(sourceChapter) | ||||
|         } else { | ||||
| @@ -97,6 +103,7 @@ fun syncChaptersWithSource( | ||||
|         return Pair(emptyList(), emptyList()) | ||||
|     } | ||||
|  | ||||
|     // Keep it a List instead of a Set. See #6372. | ||||
|     val readded = mutableListOf<Chapter>() | ||||
|  | ||||
|     db.inTransaction { | ||||
| @@ -154,6 +161,7 @@ fun syncChaptersWithSource( | ||||
|         db.updateLastUpdated(manga).executeAsBlocking() | ||||
|     } | ||||
|  | ||||
|     @Suppress("ConvertArgumentToSet") | ||||
|     return Pair(toAdd.subtract(readded).toList(), toDelete.subtract(readded).toList()) | ||||
| } | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user