TRY {
xbt_multidict_set_ext(mdict, keys, lens, data, free_ctn);
- } TRY_CLEANUP {
+ }
+ TRY_CLEANUP {
xbt_dynar_free(&lens);
}
CATCH_ANONYMOUS {
int keys_len = xbt_dynar_length(keys);
xbt_assert(xbt_dynar_length(keys) == xbt_dynar_length(lens));
- xbt_assert(xbt_dynar_length(keys) >= 1,
+ xbt_assert(!xbt_dynar_is_empty(keys),
"Can't get a zero-long key set in a multidict");
XBT_DEBUG("xbt_multidict_get(%p, %ld)", mdict, xbt_dynar_length(keys));
xbt_multidict_remove_ext(xbt_dict_t mdict, xbt_dynar_t keys,
xbt_dynar_t lens)
{
- xbt_dict_t thislevel, nextlevel = NULL;
- int i;
+ volatile xbt_dict_t thislevel;
+ volatile xbt_dict_t nextlevel = NULL;
+ volatile int i;
xbt_ex_t e;
unsigned long int thislen;
TRY {
xbt_multidict_remove_ext(mdict, keys, lens);
- } TRY_CLEANUP {
+ }
+ TRY_CLEANUP {
xbt_dynar_free(&lens);
}
CATCH_ANONYMOUS {