VirtualBox

Ignore:
Timestamp:
Apr 18, 2020 11:08:25 PM (5 years ago)
Author:
vboxsync
Message:

VBoxNetFlt: VC++ 14.1 warnings and some cleanups. bugref:8489

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/HostDrivers/VBoxNetFlt/win/tools/VBoxNetLwfUninstall.cpp

    r82968 r83805  
    3131#define VBOX_NETLWF_RETRIES 10
    3232
    33 static VOID winNetCfgLogger (LPCSTR szString)
     33static VOID winNetCfgLogger(LPCSTR szString)
    3434{
    3535    printf("%s", szString);
     
    3939{
    4040    INetCfg *pnc;
    41     LPWSTR lpszLockedBy = NULL;
    42     int r;
     41    int rcExit = RTEXITCODE_FAILURE;
    4342
    4443    VBoxNetCfgWinSetLogging(winNetCfgLogger);
     
    4746    if (hr == S_OK)
    4847    {
    49         int i = 0;
    50         do
     48        for (int i = 0;; i++)
    5149        {
    52             hr = VBoxNetCfgWinQueryINetCfg(&pnc, TRUE, VBOX_NETCFG_APP_NAME, 10000, &lpszLockedBy);
     50            LPWSTR pwszLockedBy = NULL;
     51            hr = VBoxNetCfgWinQueryINetCfg(&pnc, TRUE, VBOX_NETCFG_APP_NAME, 10000, &pwszLockedBy);
    5352            if (hr == S_OK)
    5453            {
    5554                hr = VBoxNetCfgWinNetLwfUninstall(pnc);
    56                 if (hr != S_OK)
     55                if (hr == S_OK)
    5756                {
    58                     wprintf(L"error uninstalling VBoxNetLwf (0x%x)\n", hr);
    59                     r = 1;
     57                    wprintf(L"uninstalled successfully\n");
     58                    rcExit = RTEXITCODE_SUCCESS;
    6059                }
    6160                else
    62                 {
    63                     wprintf(L"uninstalled successfully\n");
    64                     r = 0;
    65                 }
     61                    wprintf(L"error uninstalling VBoxNetLwf (%#lx)\n", hr);
    6662
    6763                VBoxNetCfgWinReleaseINetCfg(pnc, TRUE);
    6864                break;
    6965            }
    70             else if (hr == NETCFG_E_NO_WRITE_LOCK && lpszLockedBy)
     66
     67            if (hr == NETCFG_E_NO_WRITE_LOCK && pwszLockedBy)
    7168            {
    72                 if (i < VBOX_NETLWF_RETRIES && !wcscmp(lpszLockedBy, L"6to4svc.dll"))
     69                if (i < VBOX_NETLWF_RETRIES && !wcscmp(pwszLockedBy, L"6to4svc.dll"))
    7370                {
    74                     wprintf(L"6to4svc.dll is holding the lock, retrying %d out of %d\n", ++i, VBOX_NETLWF_RETRIES);
    75                     CoTaskMemFree(lpszLockedBy);
     71                    wprintf(L"6to4svc.dll is holding the lock, retrying %d out of %d\n", i + 1, VBOX_NETLWF_RETRIES);
     72                    CoTaskMemFree(pwszLockedBy);
    7673                }
    7774                else
    7875                {
    79                     wprintf(L"Error: write lock is owned by another application (%s), close the application and retry uninstalling\n", lpszLockedBy);
    80                     r = 1;
    81                     CoTaskMemFree(lpszLockedBy);
     76                    wprintf(L"Error: write lock is owned by another application (%s), close the application and retry uninstalling\n",
     77                             pwszLockedBy);
     78                    CoTaskMemFree(pwszLockedBy);
    8279                    break;
    8380                }
     
    8582            else
    8683            {
    87                 wprintf(L"Error getting the INetCfg interface (0x%x)\n", hr);
    88                 r = 1;
     84                wprintf(L"Error getting the INetCfg interface (%#lx)\n", hr);
    8985                break;
    9086            }
    91         } while (true);
     87        }
    9288
    9389        CoUninitialize();
    9490    }
    9591    else
    96     {
    97         wprintf(L"Error initializing COM (0x%x)\n", hr);
    98         r = 1;
    99     }
     92        wprintf(L"Error initializing COM (%#lx)\n", hr);
    10093
    10194    VBoxNetCfgWinSetLogging(NULL);
    10295
    103     return r;
     96    return rcExit;
    10497}
    10598
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