VirtualBox

Changeset 40540 in vbox for trunk


Ignore:
Timestamp:
Mar 19, 2012 2:29:29 PM (13 years ago)
Author:
vboxsync
Message:

Frontends/VBoxManage: use new API method to get the machine state of several VMs, faster than old way for getting the list of running VMs

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VBoxManage/VBoxManageList.cpp

    r39662 r40540  
    55
    66/*
    7  * Copyright (C) 2006-2011 Oracle Corporation
     7 * Copyright (C) 2006-2012 Oracle Corporation
    88 *
    99 * This file is part of VirtualBox Open Source Edition (OSE), as
     
    326326            com::SafeIfaceArray<IMachine> machines;
    327327            rc = rptrVirtualBox->COMGETTER(Machines)(ComSafeArrayAsOutParam(machines));
     328            com::SafeArray<MachineState_T> states;
     329            if (SUCCEEDED(rc))
     330                rc = rptrVirtualBox->GetMachineStates(ComSafeArrayAsInParam(machines), ComSafeArrayAsOutParam(states));
    328331            if (SUCCEEDED(rc))
    329332            {
     
    335338                    if (machines[i])
    336339                    {
    337                         MachineState_T machineState;
    338                         rc = machines[i]->COMGETTER(State)(&machineState);
    339                         if (SUCCEEDED(rc))
     340                        MachineState_T machineState = states[i];
     341                        switch (machineState)
    340342                        {
    341                             switch (machineState)
    342                             {
    343                                 case MachineState_Running:
    344                                 case MachineState_Teleporting:
    345                                 case MachineState_LiveSnapshotting:
    346                                 case MachineState_Paused:
    347                                 case MachineState_TeleportingPausedVM:
    348                                     rc = showVMInfo(rptrVirtualBox, machines[i], fOptLong ? VMINFO_STANDARD : VMINFO_COMPACT);
    349                                     break;
    350                             }
     343                            case MachineState_Running:
     344                            case MachineState_Teleporting:
     345                            case MachineState_LiveSnapshotting:
     346                            case MachineState_Paused:
     347                            case MachineState_TeleportingPausedVM:
     348                                rc = showVMInfo(rptrVirtualBox, machines[i], fOptLong ? VMINFO_STANDARD : VMINFO_COMPACT);
     349                                break;
    351350                        }
    352351                    }
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette