X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=session_file.c;h=0e3c56bec13be086a4cf7ce10f725c17363773a2;hb=a76983fd207554de93adabfd33d2abf8d0f3662a;hp=764cb68fde38f05b1d6adf7e7589ad4525861016;hpb=b08024a8363c7a019bebc05a25e2689e774326e8;p=libsigrok.git diff --git a/session_file.c b/session_file.c index 764cb68f..0e3c56be 100644 --- a/session_file.c +++ b/session_file.c @@ -66,7 +66,12 @@ int sr_session_load(const char *filename) sr_dbg("Not a valid sigrok session file."); return SR_ERR; } - metafile = g_malloc(zs.size); + + if (!(metafile = g_try_malloc(zs.size))) { + sr_err("session file: %s: metafile malloc failed", __func__); + return SR_ERR_MALLOC; + } + zf = zip_fopen_index(archive, zs.index, 0); zip_fread(zf, metafile, zs.size); zip_fclose(zf);