Skip to content

Commit f5130f5

Browse files
2dustAnGgIt886
authored andcommitted
fix Gson fromJson
2dust/v2rayNG#3534
1 parent 66fac19 commit f5130f5

File tree

1 file changed

+24
-14
lines changed

1 file changed

+24
-14
lines changed

app/src/main/kotlin/com/neko/v2ray/util/AngConfigManager.kt

+24-14
Original file line numberDiff line numberDiff line change
@@ -313,21 +313,31 @@ object AngConfigManager {
313313
e.printStackTrace()
314314
}
315315

316-
// For compatibility
317-
val config = ServerConfig.create(EConfigType.CUSTOM)
318-
config.subscriptionId = subid
319-
config.fullConfig = Gson().fromJson(server, V2rayConfig::class.java)
320-
config.remarks = config.fullConfig?.remarks ?: System.currentTimeMillis().toString()
321-
val key = MmkvManager.encodeServerConfig("", config)
322-
MmkvManager.encodeServerRaw(key, server)
323-
return 1
316+
try {
317+
// For compatibility
318+
val config = ServerConfig.create(EConfigType.CUSTOM)
319+
config.subscriptionId = subid
320+
config.fullConfig = Gson().fromJson(server, V2rayConfig::class.java)
321+
config.remarks = config.fullConfig?.remarks ?: System.currentTimeMillis().toString()
322+
val key = MmkvManager.encodeServerConfig("", config)
323+
MmkvManager.encodeServerRaw(key, server)
324+
return 1
325+
} catch (e: Exception) {
326+
e.printStackTrace()
327+
}
328+
return 0
324329
} else if (server.startsWith("[Interface]") && server.contains("[Peer]")) {
325-
val config = WireguardFmt.parseWireguardConfFile(server)
326-
?: return R.string.toast_incorrect_protocol
327-
config.fullConfig?.remarks ?: System.currentTimeMillis().toString()
328-
val key = MmkvManager.encodeServerConfig("", config)
329-
MmkvManager.encodeServerRaw(key, server)
330-
return 1
330+
try {
331+
val config = WireguardFmt.parseWireguardConfFile(server)
332+
?: return R.string.toast_incorrect_protocol
333+
config.fullConfig?.remarks ?: System.currentTimeMillis().toString()
334+
val key = MmkvManager.encodeServerConfig("", config)
335+
MmkvManager.encodeServerRaw(key, server)
336+
return 1
337+
} catch (e: Exception) {
338+
e.printStackTrace()
339+
}
340+
return 0
331341
} else {
332342
return 0
333343
}

0 commit comments

Comments
 (0)