X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=src%2Fsession_file.c;h=467c581283a0e55899003f469dea476bcd1e07c9;hb=8b5aefc681c1d4158ce4c0c95f2a2888ea274a12;hp=294614a140095942a0b1ad1d6cd52cc3a1a01369;hpb=2c38a41a60b8ebb8137d3b5b14ae652c66af6034;p=libsigrok.git diff --git a/src/session_file.c b/src/session_file.c index 294614a1..467c5812 100644 --- a/src/session_file.c +++ b/src/session_file.c @@ -46,6 +46,16 @@ extern SR_PRIV struct sr_dev_driver session_driver; static int session_driver_initialized = 0; +#if !HAVE_ZIP_DISCARD +/* Replacement for zip_discard() if it isn't available. + */ +SR_PRIV void sr_zip_discard(struct zip *archive) +{ + if (zip_unchange_all(archive) < 0 || zip_close(archive) < 0) + sr_err("Failed to discard ZIP archive: %s", zip_strerror(archive)); +} +#endif + /** Read metadata entries from a session archive. * @param[in] archive An open ZIP archive. * @param[in] entry Stat buffer filled in for the metadata archive member. @@ -268,7 +278,7 @@ SR_API int sr_session_load(struct sr_context *ctx, const char *filename, sr_config_set(sdi, NULL, SR_CONF_NUM_LOGIC_CHANNELS, g_variant_new_int32(total_channels)); for (k = 0; k < total_channels; k++) { - g_snprintf(channelname, sizeof channelname, + g_snprintf(channelname, sizeof(channelname), "%d", k); sr_channel_new(sdi, k, SR_CHANNEL_LOGIC, FALSE, channelname);