Safely handle null titleName

This commit is contained in:
Mio.
2025-07-13 03:30:33 +02:00
parent d0b4b26884
commit bdfe0aeea5
2 changed files with 77 additions and 69 deletions

View File

@@ -81,6 +81,7 @@ class KavitaHelper {
val chapterLabel = if (isWebtoon) "Episode" else "Chapter"
val volumeLabel = if (isWebtoon) "Season" else "Volume"
if (titleName != null) {
name = when (type) {
ChapterType.Regular -> {
val chapterNum = formatChapterNumber(chapter)
@@ -94,10 +95,12 @@ class KavitaHelper {
volumeName = volume.name.ifBlank { title },
),
)}"
else ->
"$volumeLabel ${formatVolumeNumber(volume)} $chapterLabel $chapterNum"
}
}
ChapterType.SingleFileVolume -> {
cleanChapterTitle(
when {
@@ -110,6 +113,7 @@ class KavitaHelper {
),
)
}
ChapterType.Special -> {
cleanChapterTitle(
when {
@@ -123,6 +127,7 @@ class KavitaHelper {
),
)
}
ChapterType.Chapter -> {
val chapterNum = formatChapterNumber(chapter)
when {
@@ -135,10 +140,12 @@ class KavitaHelper {
volumeName = volume.name,
),
)}"
else ->
"$chapterLabel $chapterNum"
}
}
ChapterType.Issue -> {
val issueNum = chapter.number.toIntOrNull()?.toString()?.padStart(3, '0') ?: chapter.number
cleanChapterTitle(
@@ -154,6 +161,7 @@ class KavitaHelper {
)
}
}
}
// Handle decimal chapter numbers properly
chapter_number = when {

View File

@@ -246,7 +246,7 @@ data class ChapterDto(
val pages: Int,
val isSpecial: Boolean,
val title: String,
val titleName: String = "",
val titleName: String?,
val pagesRead: Int,
val coverImageLocked: Boolean,
val coverImage: String,