VirtualBox

Ignore:
Timestamp:
Jan 24, 2009 11:11:56 AM (16 years ago)
Author:
vboxsync
Message:

Reapplied r41613.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Main/SharedFolderImpl.cpp

    r15978 r16215  
    104104    unconst (mMachine) = aMachine;
    105105
    106     HRESULT rc = protectedInit (aMachine, aThat->mData.mName,
    107                                 aThat->mData.mHostPath, aThat->mData.mWritable);
     106    HRESULT rc = protectedInit (aMachine, aThat->m.name,
     107                                aThat->m.hostPath, aThat->m.writable);
    108108
    109109    /* Confirm a successful initialization when it's the case */
     
    222222    mParent->addDependentChild (this);
    223223
    224     unconst (mData.mName) = aName;
    225     unconst (mData.mHostPath) = hostPath;
    226     mData.mWritable = aWritable;
     224    unconst (m.name) = aName;
     225    unconst (m.hostPath) = hostPath;
     226    m.writable = aWritable;
    227227
    228228    return S_OK;
     
    263263
    264264    /* mName is constant during life time, no need to lock */
    265     mData.mName.cloneTo (aName);
     265    m.name.cloneTo (aName);
    266266
    267267    return S_OK;
     
    276276
    277277    /* mHostPath is constant during life time, no need to lock */
    278     mData.mHostPath.cloneTo (aHostPath);
     278    m.hostPath.cloneTo (aHostPath);
    279279
    280280    return S_OK;
     
    283283STDMETHODIMP SharedFolder::COMGETTER(Accessible) (BOOL *aAccessible)
    284284{
    285     CheckComArgOutPointerValid(aAccessible);
     285    CheckComArgOutPointerValid (aAccessible);
    286286
    287287    AutoCaller autoCaller (this);
     
    291291
    292292    /* check whether the host path exists */
    293     Utf8Str hostPath = Utf8Str (mData.mHostPath);
     293    Utf8Str hostPath = Utf8Str (m.hostPath);
    294294    char hostPathFull [RTPATH_MAX];
    295295    int vrc = RTPathExists (hostPath) ? RTPathReal (hostPath, hostPathFull,
     
    302302    }
    303303
    304     LogWarningThisFunc (("'%s' is not accessible (%Rrc)\n", hostPath.raw(), vrc));
     304    AutoWriteLock alock (this);
     305
     306    m.lastAccessError = BstrFmt (
     307        tr ("'%s' is not accessible (%Rrc)"), hostPath.raw(), vrc);
     308
     309    LogWarningThisFunc (("m.lastAccessError=\"%ls\"\n", m.lastAccessError.raw()));
    305310
    306311    *aAccessible = FALSE;
     
    312317    CheckComArgOutPointerValid(aWritable);
    313318
    314     *aWritable = mData.mWritable;
    315 
    316     return S_OK;
    317 }
     319    *aWritable = m.writable;
     320
     321    return S_OK;
     322}
     323
     324STDMETHODIMP SharedFolder::COMGETTER(LastAccessError) (BSTR *aLastAccessError)
     325{
     326    CheckComArgOutPointerValid (aLastAccessError);
     327
     328    AutoCaller autoCaller (this);
     329    CheckComRCReturnRC (autoCaller.rc());
     330
     331    AutoReadLock alock (this);
     332
     333    m.lastAccessError.cloneTo (aLastAccessError);
     334
     335    return S_OK;
     336}
     337
    318338/* vi: set tabstop=4 shiftwidth=4 expandtab: */
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