Skip to content

Commit a469233

Browse files
committed
Fix
1 parent 94f7ab7 commit a469233

File tree

1 file changed

+13
-10
lines changed

1 file changed

+13
-10
lines changed

V2rayNG/app/src/main/java/com/v2ray/ang/handler/V2rayConfigManager.kt

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -327,6 +327,11 @@ object V2rayConfigManager {
327327
key.mux = null
328328
}
329329

330+
// apply fragment
331+
for (outbound in v2rayConfig.outbounds) {
332+
updateOutboundFragment(outbound)
333+
}
334+
330335
result.status = true
331336
result.content = JsonUtil.toJsonPretty(v2rayConfig) ?: ""
332337
result.guid = guid
@@ -980,13 +985,6 @@ object V2rayConfigManager {
980985
return true
981986
}
982987

983-
val fragmentOutbound =
984-
OutboundBean(
985-
protocol = AppConfig.PROTOCOL_FREEDOM,
986-
tag = AppConfig.TAG_FRAGMENT,
987-
mux = null
988-
)
989-
990988
var packets =
991989
MmkvManager.decodeSettingsString(AppConfig.PREF_FRAGMENT_PACKETS) ?: "tlshello"
992990
if (outbound.streamSettings?.security == AppConfig.REALITY
@@ -1021,15 +1019,20 @@ object V2rayConfigManager {
10211019
)
10221020
)
10231021

1024-
val finalMaskObj = JsonUtil.parseString(JsonUtil.toJson(outbound.streamSettings?.finalmask))
1025-
?: com.google.gson.JsonObject()
1022+
val finalMaskObj = outbound.streamSettings?.finalmask?.let { existingFinalMask ->
1023+
JsonUtil.parseString(JsonUtil.toJson(existingFinalMask))
1024+
} ?: com.google.gson.JsonObject()
10261025

10271026
// finalmask.tcp / finalmask.udp are arrays; prepend mask at index 0.
10281027
fun prependMask(scope: String, mask: StreamSettingsBean.FinalMaskBean.MaskBean) {
1028+
val current = finalMaskObj.get(scope)
1029+
if (current != null && current.isJsonArray && current.asJsonArray.size() > 0) {
1030+
return
1031+
}
1032+
10291033
val newArray = JsonArray()
10301034
newArray.add(JsonUtil.parseString(JsonUtil.toJson(mask)))
10311035

1032-
val current = finalMaskObj.get(scope)
10331036
if (current != null && current.isJsonArray) {
10341037
current.asJsonArray.forEach { newArray.add(it) }
10351038
}

0 commit comments

Comments
 (0)