* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
+/* For an explanation of the threading model, please main(). */
+
#include <config.h>
#include <stdio.h>
static char *
write_fn_finish_capture (void)
{
- char *ret = write_fn_buffer;
+ char *ret;
ASSERT_IS_WUI_THREAD ();
+ /* Make sure the buffer is NUL-terminated before returning it. */
+ write_fn_buffer = g_realloc (write_fn_buffer, write_fn_len+1);
+ write_fn_buffer[write_fn_len] = '\0';
+ ret = write_fn_buffer;
+
write_fn_buffer = NULL;
write_fn_len = -1;
return ret;
vm.hostid = -1;
vm.id = -1;
vm.vnc_port = -1;
+ vm.forward_vnc_port = -1;
vm.mem_allocated = -1;
vm.mem_used = -1;
vm.vcpus_allocated = -1;
xmlFree (str);
}
}
+ else if (xmlStrcmp (p->name, (const xmlChar *) "forward-vnc-port") == 0) {
+ str = xmlNodeGetContent (p);
+ if (str != NULL) {
+ vm.forward_vnc_port = strtol ((char *) str, NULL, 10);
+ xmlFree (str);
+ }
+ }
else if (xmlStrcmp (p->name, (const xmlChar *) "vnic-mac-addr") == 0) {
str = xmlNodeGetContent (p);
if (str != NULL) {
DEBUG ("required field \"description\" missing from <vm> structure");
else if (vm.vnc_port == -1)
DEBUG ("required field \"vnc-port\" missing from <vm> structure");
+ else if (vm.forward_vnc_port == -1)
+ DEBUG ("required field \"forward-vnc-port\" missing from <vm> structure");
else if (vm.uuid == NULL)
DEBUG ("required field \"uuid\" missing from <vm> structure");
else
return ret;
}
+
+gboolean
+main_vmlist_has_running_vm(struct vm* _vm)
+{
+ // TODO ? get list and wait to be retreived
+ // wui_thread_send_refresh_vm_list();
+
+ // find vm in list
+ GSList* res = g_slist_find_custom (vmlist, _vm, compare_vm);
+
+ // return true if running
+ if(res != NULL) return STREQ (((struct vm*) res->data)->state, "running");
+
+ return FALSE;
+}