Changeset 90546 in vbox
- Timestamp:
- Aug 6, 2021 1:17:21 PM (4 years ago)
- Location:
- trunk/src/VBox/Frontends/VirtualBox/src/networking
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Frontends/VirtualBox/src/networking/UINetworkCustomer.cpp
r90524 r90546 27 27 } 28 28 29 UINetworkCustomer::~UINetworkCustomer() 30 { 31 emit sigBeingDestroyed(this); 32 } 33 29 34 void UINetworkCustomer::createNetworkRequest(UINetworkRequestType enmType, 30 35 const QList<QUrl> urls, -
trunk/src/VBox/Frontends/VirtualBox/src/networking/UINetworkCustomer.h
r90541 r90546 38 38 Q_OBJECT; 39 39 40 signals: 41 42 /** Notifies listeners about @a pNetworkCustomer being destroyed. */ 43 void sigBeingDestroyed(UINetworkCustomer *pNetworkCustomer); 44 40 45 public: 41 46 … … 43 48 * @param fForceCall Brings whether this customer has forced privelegies. */ 44 49 UINetworkCustomer(QObject *pParent = 0, bool fForceCall = true); 50 /** Destructs network customer. */ 51 virtual ~UINetworkCustomer() /* override */; 45 52 46 53 /** Returns whether this customer has forced privelegies. */ -
trunk/src/VBox/Frontends/VirtualBox/src/networking/UINetworkRequestManager.cpp
r90540 r90546 79 79 m_requests.insert(uId, pNetworkRequest); 80 80 m_customers.insert(uId, pCustomer); 81 connect(pCustomer, &UINetworkCustomer::sigBeingDestroyed, 82 this, &UINetworkRequestManager::sltHandleNetworkCustomerBeingDestroyed, 83 Qt::UniqueConnection); 81 84 82 85 /* Return ID: */ … … 110 113 /* Delegate request to customer: */ 111 114 UINetworkCustomer *pNetworkCustomer = m_customers.value(uId); 112 AssertPtrReturnVoid(pNetworkCustomer);113 pNetworkCustomer->processNetworkReplyProgress(iReceived, iTotal);115 if (pNetworkCustomer) 116 pNetworkCustomer->processNetworkReplyProgress(iReceived, iTotal); 114 117 } 115 118 … … 124 127 /* Delegate request to customer: */ 125 128 UINetworkCustomer *pNetworkCustomer = m_customers.value(uId); 126 AssertPtrReturnVoid(pNetworkCustomer);127 pNetworkCustomer->processNetworkReplyFailed(strError);129 if (pNetworkCustomer) 130 pNetworkCustomer->processNetworkReplyFailed(strError); 128 131 129 132 /* Cleanup request: */ … … 141 144 /* Delegate request to customer: */ 142 145 UINetworkCustomer *pNetworkCustomer = m_customers.value(uId); 143 AssertPtrReturnVoid(pNetworkCustomer);144 pNetworkCustomer->processNetworkReplyCanceled(pNetworkRequest->reply());146 if (pNetworkCustomer) 147 pNetworkCustomer->processNetworkReplyCanceled(pNetworkRequest->reply()); 145 148 146 149 /* Cleanup request: */ … … 158 161 /* Delegate request to customer: */ 159 162 UINetworkCustomer *pNetworkCustomer = m_customers.value(uId); 160 AssertPtrReturnVoid(pNetworkCustomer);161 pNetworkCustomer->processNetworkReplyFinished(pNetworkRequest->reply());163 if (pNetworkCustomer) 164 pNetworkCustomer->processNetworkReplyFinished(pNetworkRequest->reply()); 162 165 163 166 /* Cleanup request: */ … … 165 168 } 166 169 170 void UINetworkRequestManager::sltHandleNetworkCustomerBeingDestroyed(UINetworkCustomer *pNetworkCustomer) 171 { 172 /* Make sure customer was and still registered: */ 173 const QList<QUuid> ids = m_customers.keys(pNetworkCustomer); 174 AssertReturnVoid(!ids.isEmpty()); 175 /* Unregister it: */ 176 foreach (const QUuid &uId, ids) 177 m_customers.remove(uId); 178 } 179 167 180 void UINetworkRequestManager::prepare() 168 181 { … … 174 187 delete m_requests.value(uId); 175 188 m_requests.remove(uId); 176 m_customers.remove(uId);177 189 } 178 190 -
trunk/src/VBox/Frontends/VirtualBox/src/networking/UINetworkRequestManager.h
r90540 r90546 80 80 void sltHandleNetworkRequestFinish(); 81 81 82 /** Handles signal about @a pNetworkCustomer being destroyed. */ 83 void sltHandleNetworkCustomerBeingDestroyed(UINetworkCustomer *pNetworkCustomer); 84 82 85 private: 83 86
Note:
See TracChangeset
for help on using the changeset viewer.