idol-commons / tools /normalize_image.py
fffiloni's picture
Fix full-height collection and mobile photo replacement
39d0601 verified
Raw History Blame Contribute Delete
743 Bytes
"""Bounded image decoder entry point; all paths are server-selected."""
import argparse,json,resource,sys
from pathlib import Path
sys.path.insert(0,str(Path(__file__).resolve().parents[1]))
resource.setrlimit(resource.RLIMIT_CPU,(10,10))
resource.setrlimit(resource.RLIMIT_AS,(1024**3,1024**3))
from backend.validation import normalize_input,InvalidImage
p=argparse.ArgumentParser();p.add_argument('input');p.add_argument('output');args=p.parse_args()
try:
raw=Path(args.input).read_bytes()
result=normalize_input(raw,Path(args.output));print(json.dumps({'ok':True,'result':result}))
except InvalidImage as exc:
print(json.dumps({'ok':False,'code':exc.code}))
except Exception:
print(json.dumps({'ok':False,'code':'decode'}))