mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-07 17:28:15 +00:00
qemuBuildClockArgStr: Allow localtime clock basis
https://bugzilla.redhat.com/show_bug.cgi?id=1046192 Commit b8bf79a, which adds clock='variable', forgets to check localtime basis in qemuBuildClockArgStr(). So that localtime basis could not be used. Reported-by: Jincheng Miao <jmiao@redhat.com> Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
parent
0db9b0883c
commit
51bea5df5d
@ -6491,14 +6491,18 @@ qemuBuildClockArgStr(virDomainClockDefPtr def)
|
||||
time_t now = time(NULL);
|
||||
struct tm nowbits;
|
||||
|
||||
if (def->data.variable.basis != VIR_DOMAIN_CLOCK_BASIS_UTC) {
|
||||
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
|
||||
_("unsupported clock basis '%s'"),
|
||||
virDomainClockBasisTypeToString(def->data.variable.basis));
|
||||
goto error;
|
||||
switch ((enum virDomainClockBasis) def->data.variable.basis) {
|
||||
case VIR_DOMAIN_CLOCK_BASIS_UTC:
|
||||
now += def->data.variable.adjustment;
|
||||
gmtime_r(&now, &nowbits);
|
||||
break;
|
||||
case VIR_DOMAIN_CLOCK_BASIS_LOCALTIME:
|
||||
now += def->data.variable.adjustment;
|
||||
localtime_r(&now, &nowbits);
|
||||
break;
|
||||
case VIR_DOMAIN_CLOCK_BASIS_LAST:
|
||||
break;
|
||||
}
|
||||
now += def->data.variable.adjustment;
|
||||
gmtime_r(&now, &nowbits);
|
||||
|
||||
/* Store the guest's basedate */
|
||||
def->data.variable.basedate = now;
|
||||
|
Loading…
x
Reference in New Issue
Block a user