You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(service): respect zip-provided *.conf on first install
Previously init_persistent_config seeded /data/adb/pathmask/*.conf from the zip-bundled .conf files, then immediately re-injected the hardcoded demo defaults (DEFAULT_TARGET_PATH_*, DEFAULT_DENY_PACKAGE_*) via ensure_config_line whenever the .defaults_v1_seeded marker was missing. As a result, users who edited the .conf files inside the zip before flashing still ended up with the demo paths/packages mixed back in on first boot.
Make the zip-bundled .conf the single source of truth on first install: drop the marker, the hardcoded constants, and the dedicated seed_target_config / seed_deny_packages_config / ensure_config_line helpers. seed_config_file now handles every conf file uniformly (zip file -> persisted file, fallback to a small typed default for boolean/numeric configs). The runtime fallback that re-added DEFAULT_TARGET_PATH_* when TARGET_PATHS ends up empty is also removed; the existing 'empty target path list' guard already covers that case.
Bumps to 2.2.2 / versionCode 13.
Copy file name to clipboardExpand all lines: update/changelog.md
+7-5Lines changed: 7 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,12 +1,14 @@
1
-
# PathMask 2.2.1
1
+
# PathMask 2.2.2
2
2
3
-
- Fix silent reboot on Android GKI kernels with `CONFIG_CFI_CLANG=y` (e.g. OnePlus 11 android13-5.15) caused by Clang CFI checking the indirect call to kprobe-resolved `kern_path` / `path_put`.
4
-
- The two indirect call sites are now wrapped in `__nocfi` helpers; the rest of the module retains full CFI coverage. Behaviour on OEM kernels that prune `EXPORT_SYMBOL(kern_path)` / `path_put` is unchanged.
3
+
- Fix silent reboot on Android GKI kernels with `CONFIG_CFI_CLANG=y` (e.g. OnePlus 11 android13-5.15) caused by Clang CFI checking the indirect call to kprobe-resolved `kern_path` / `path_put`. The two indirect call sites are now wrapped in `__nocfi` helpers; the rest of the module retains full CFI coverage. Behaviour on OEM kernels that prune `EXPORT_SYMBOL(kern_path)` / `path_put` is unchanged.
4
+
- Fix install-time config seed: previously, even if you edited `target_path.conf` / `deny_packages.conf` etc. inside the zip before flashing, the boot script would unconditionally re-add the demo defaults (`/dev/cpuset/scene-daemon`, `com.chunqiunativecheck`, ...) into `/data/adb/pathmask/*.conf`. Now the zip's own `*.conf` files are the single source of truth on first install; subsequent boots leave persisted user config alone.
5
+
- Drop the unused `.defaults_v1_seeded` marker and inlined hardcoded defaults from `service.sh`. The WebUI "恢复默认" button still writes its own demo defaults explicitly.
0 commit comments