From ed1ac8f4b3cdeaea6d324f9e5f45d6777762f3d8 Mon Sep 17 00:00:00 2001 From: Thomas Lamprecht Date: Tue, 29 Aug 2017 12:08:29 +0200 Subject: [PATCH] create: clear iothread on disable A user may set the `iothread` option and then change the bus type to something which does not support it (sata, ide), while we disable it the previously set value remains, which is confusing. An user could think he coulkd trick the Wizard into using iothreads for SATA/IDE but we just ignore the value in this case. Set iothread to false in the case it gets disabled. Signed-off-by: Thomas Lamprecht --- www/manager6/qemu/HDEdit.js | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/www/manager6/qemu/HDEdit.js b/www/manager6/qemu/HDEdit.js index 9f06ffe7..fdeb4a2a 100644 --- a/www/manager6/qemu/HDEdit.js +++ b/www/manager6/qemu/HDEdit.js @@ -17,7 +17,12 @@ Ext.define('PVE.qemu.HDInputPanel', { onControllerChange: function(field) { var value = field.getValue(); - this.lookup('iothread').setDisabled(!value.match(/^(virtio|scsi)/)); + + var allowIOthread = value.match(/^(virtio|scsi)/); + this.lookup('iothread').setDisabled(!allowIOthread); + if (!allowIOthread) { + this.lookup('iothread').setValue(false); + } }, control: { @@ -102,7 +107,7 @@ Ext.define('PVE.qemu.HDInputPanel', { delete me.drive.discard; } - if (values.iothread && confid.match(/^(virtio|scsi)\d+$/)) { + if (values.iothread) { me.drive.iothread = 'on'; // do not silently change a VM-wide option after creating it if (me.insideWizard) { @@ -273,7 +278,7 @@ Ext.define('PVE.qemu.HDInputPanel', { }, { xtype: 'pvecheckbox', - disabled: me.insideWizard || (me.confid && !me.confid.match(/^(virtio|scsi)/)), + disabled: me.confid && !me.confid.match(/^(virtio|scsi)/), fieldLabel: gettext('IO thread'), reference: 'iothread', name: 'iothread' -- 2.39.2