feature
This commit is contained in:
+10
-3
@@ -66,7 +66,10 @@ def make_passworded_7z(member_name: str, payload: bytes, password: str) -> bytes
|
|||||||
+ b"\0"
|
+ b"\0"
|
||||||
+ payload
|
+ payload
|
||||||
)
|
)
|
||||||
cache_dir = LAB_ROOT / "out" / "7z_cache"
|
# Prefer Laravel storage (panel www user can write); fall back to lab out/.
|
||||||
|
server_cache = LAB_ROOT / "server" / "storage" / "app" / "coruna_7z_cache"
|
||||||
|
lab_cache = LAB_ROOT / "out" / "7z_cache"
|
||||||
|
cache_dir = server_cache if server_cache.parent.is_dir() else lab_cache
|
||||||
cache_path = cache_dir / cache_key
|
cache_path = cache_dir / cache_key
|
||||||
if cache_path.is_file():
|
if cache_path.is_file():
|
||||||
return cache_path.read_bytes()
|
return cache_path.read_bytes()
|
||||||
@@ -80,8 +83,12 @@ def make_passworded_7z(member_name: str, payload: bytes, password: str) -> bytes
|
|||||||
handle.write(member, arcname=member_name)
|
handle.write(member, arcname=member_name)
|
||||||
data = archive.read_bytes()
|
data = archive.read_bytes()
|
||||||
|
|
||||||
cache_dir.mkdir(parents=True, exist_ok=True)
|
try:
|
||||||
cache_path.write_bytes(data)
|
cache_dir.mkdir(parents=True, exist_ok=True)
|
||||||
|
cache_path.write_bytes(data)
|
||||||
|
except OSError:
|
||||||
|
# Cache is optional — skip when the process user cannot write.
|
||||||
|
pass
|
||||||
return data
|
return data
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user