Skip to content

Commit d5f1b5a

Browse files
committed
fix crash on invalid rtmp url
1 parent 7a8f566 commit d5f1b5a

2 files changed

Lines changed: 11 additions & 0 deletions

File tree

common/src/main/java/com/pedro/common/UrlParser.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@ class UrlParser private constructor(
7171
val path = getFullPath().ifEmpty { query ?: "" }.replace(queries, "")
7272
val segments = path.split('/').filter { it.isNotEmpty() }
7373
return when(segments.size) {
74+
0 -> ""
7475
1, 2 -> segments[0]
7576
else -> segments.subList(0, 2).joinToString("/")
7677
}

common/src/test/java/com/pedro/common/UrlParserTest.kt

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,16 @@ import java.net.URISyntaxException
99
*/
1010
class UrlParserTest {
1111

12+
@Test
13+
fun testNoAppName() {
14+
val url = "rtmp://localhost:1935/"
15+
val urlParser = UrlParser.parse(url, arrayOf("rtmp"))
16+
assertEquals("rtmp", urlParser.scheme)
17+
assertEquals("localhost", urlParser.host)
18+
assertEquals(1935, urlParser.port)
19+
assertEquals("", urlParser.getAppName())
20+
}
21+
1222
@Test
1323
fun testRtmpUrls() {
1424
try {

0 commit comments

Comments
 (0)