X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=session_file.c;h=0e3c56bec13be086a4cf7ce10f725c17363773a2;hb=b53738baf76219237e0a6629905981d7a1f2508e;hp=764cb68fde38f05b1d6adf7e7589ad4525861016;hpb=50959ddcdc455c930397fbc9f85c3a745ff45fda;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);