Ignore:
Timestamp:
Jan 9, 2017, 11:09:38 AM (2 years ago)
Author:
jrpelegrina
Message:

Update new version: 3.15.02

File:
1 edited

Legend:

Unmodified
Added
Removed
  • filezilla/trunk/fuentes/src/interface/volume_enumerator.cpp

    r130 r3185  
    1010
    1111CVolumeDescriptionEnumeratorThread::CVolumeDescriptionEnumeratorThread(wxEvtHandler* pEvtHandler)
    12         : wxThread(wxTHREAD_JOINABLE),
    13           m_pEvtHandler(pEvtHandler)
     12        : m_pEvtHandler(pEvtHandler)
    1413{
    1514        m_failure = false;
     
    1716        m_running = true;
    1817
    19         if (Create() != wxTHREAD_NO_ERROR)
    20         {
     18        if (!run()) {
    2119                m_running = false;
    2220                m_failure = true;
    2321        }
    24         Run();
    2522}
    2623
     
    2825{
    2926        m_stop = true;
    30         Wait(wxTHREAD_WAIT_BLOCK);
    31 
    32         for (std::list<t_VolumeInfoInternal>::const_iterator iter = m_volumeInfo.begin(); iter != m_volumeInfo.end(); ++iter)
    33         {
     27        join();
     28
     29        for (auto iter = m_volumeInfo.cbegin(); iter != m_volumeInfo.cend(); ++iter) {
    3430                delete [] iter->pVolume;
    3531                delete [] iter->pVolumeName;
     
    3834}
    3935
    40 wxThread::ExitCode CVolumeDescriptionEnumeratorThread::Entry()
     36void CVolumeDescriptionEnumeratorThread::entry()
    4137{
    4238        if (!GetDriveLabels())
     
    4642
    4743        m_pEvtHandler->QueueEvent(new wxCommandEvent(fzEVT_VOLUMESENUMERATED));
    48 
    49         return 0;
    5044}
    5145
    5246void CVolumeDescriptionEnumeratorThread::ProcessDrive(wxString const& drive)
    5347{
    54         if( GetDriveLabel(drive) ) {
     48        if ( GetDriveLabel(drive)) {
    5549                m_pEvtHandler->QueueEvent(new wxCommandEvent(fzEVT_VOLUMEENUMERATED));
    5650        }
     
    7569        DWORD dwSize = 511;
    7670        if (!WNetGetConnection(pVolume, share_name, &dwSize)) {
    77                 scoped_lock l(sync_);
     71                fz::scoped_lock l(sync_);
    7872                t_VolumeInfoInternal volumeInfo;
    7973                volumeInfo.pVolume = pVolume;
     
    8882        wxChar* pVolumeName = new wxChar[501];
    8983        int oldErrorMode = SetErrorMode(SEM_FAILCRITICALERRORS);
    90         BOOL res = GetVolumeInformation(drive, pVolumeName, 500, 0, 0, 0, 0, 0);
     84        BOOL res = GetVolumeInformation(drive.wc_str(), pVolumeName, 500, 0, 0, 0, 0, 0);
    9185        SetErrorMode(oldErrorMode);
    9286        if (res && pVolumeName[0]) {
    93                 scoped_lock l(sync_);
     87                fz::scoped_lock l(sync_);
    9488                t_VolumeInfoInternal volumeInfo;
    9589                volumeInfo.pVolume = pVolume;
     
    186180        const wxChar* pDrive = drives;
    187181        while (*pDrive) {
    188                 const int drivelen = wxStrlen(pDrive);
     182                const int drivelen = fz::strlen(pDrive);
    189183
    190184                if (!IsHidden(pDrive, drivesToHide)) {
     
    205199        std::list<t_VolumeInfo> volumeInfo;
    206200
    207         scoped_lock l(sync_);
     201        fz::scoped_lock l(sync_);
    208202
    209203        for (auto const& internal_info : m_volumeInfo) {
Note: See TracChangeset for help on using the changeset viewer.