0001-gdc-raise-APIError-on-unloadable-content-61254.patch
passerelle/apps/gdc/models.py | ||
---|---|---|
27 | 27 | |
28 | 28 |
from passerelle.base.models import BaseResource |
29 | 29 |
from passerelle.utils.api import endpoint |
30 |
from passerelle.utils.jsonresponse import APIError |
|
30 | 31 | |
31 | 32 | |
32 | 33 |
def deep_bytes2str(obj): |
... | ... | |
48 | 49 | |
49 | 50 | |
50 | 51 |
def phpserialize_loads(s): |
51 |
return deep_bytes2str(phpserialize.loads(s.encode('utf-8'))) |
|
52 |
try: |
|
53 |
return deep_bytes2str(phpserialize.loads(s.encode('utf-8'))) |
|
54 |
except ValueError: |
|
55 |
truncated = s[:128] if isinstance(s, str) else s |
|
56 |
raise APIError(f'Could not deserialize GDC response {truncated:r}', data={'content': s}) |
|
52 | 57 | |
53 | 58 | |
54 | 59 |
class Gdc(BaseResource): |
55 |
- |