diff options
-rw-r--r-- | extras/mini-os/xenbus/xenbus.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/extras/mini-os/xenbus/xenbus.c b/extras/mini-os/xenbus/xenbus.c index 22f109fd07..a8081fd943 100644 --- a/extras/mini-os/xenbus/xenbus.c +++ b/extras/mini-os/xenbus/xenbus.c @@ -154,8 +154,10 @@ char *xenbus_switch_state(xenbus_transaction_t xbt, const char* path, XenbusStat msg = xenbus_write(xbt, path, value); exit: - if (xbt_flag) + if (xbt_flag) { msg2 = xenbus_transaction_end(xbt, 0, &retry); + xbt = XBT_NIL; + } if (msg == NULL && msg2 != NULL) msg = msg2; } while (retry); |