aboutsummaryrefslogtreecommitdiff
path: root/py/modstruct.c
diff options
context:
space:
mode:
authorPaul Sokolovsky <pfalcon@users.sourceforge.net>2016-05-14 15:47:08 +0300
committerPaul Sokolovsky <pfalcon@users.sourceforge.net>2016-05-14 15:47:08 +0300
commite53fb1bf031a53ad23a45846addf14e25cebb97d (patch)
treeb1fdf1d8a7028a0a1ab8d34a4dd6fd82c4fd01ff /py/modstruct.c
parent2ae6697300ed6954d30d94992fc5ff13e5a93eae (diff)
py/modstruct: Raise ValueError on unsupported format char.
Diffstat (limited to 'py/modstruct.c')
-rw-r--r--py/modstruct.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/py/modstruct.c b/py/modstruct.c
index cd3209738..eabc951ae 100644
--- a/py/modstruct.c
+++ b/py/modstruct.c
@@ -120,8 +120,9 @@ STATIC mp_obj_t struct_calcsize(mp_obj_t fmt_in) {
if (sz == 0) {
sz = (mp_uint_t)mp_binary_get_size(fmt_type, *fmt, &align);
}
- // TODO
- assert(sz != (mp_uint_t)-1);
+ if (sz == 0) {
+ nlr_raise(mp_obj_new_exception_msg(&mp_type_ValueError, "unsupported format"));
+ }
// Apply alignment
size = (size + align - 1) & ~(align - 1);
size += sz;