| 2141 | } |
| 2142 | |
| 2143 | void ScriptnodeExceptionHandler::removeError(NodeBase* n, Error::ErrorCode errorToRemove) |
| 2144 | { |
| 2145 | customErrorMessage = {}; |
| 2146 | |
| 2147 | bool didSomething = false; |
| 2148 | |
| 2149 | for (int i = 0; i < items.size(); i++) |
| 2150 | { |
| 2151 | if(items[i].node == nullptr) |
| 2152 | { |
| 2153 | items.remove(i--); |
| 2154 | didSomething = true; |
| 2155 | continue; |
| 2156 | } |
| 2157 | |
| 2158 | auto e = items[i].error.error; |
| 2159 | |
| 2160 | auto isErrorCode = e == errorToRemove || |
| 2161 | (errorToRemove == Error::numErrorCodes && |
| 2162 | e != Error::ErrorCode::DeprecatedNode && |
| 2163 | e != Error::ErrorCode::IllegalBypassConnection); |
| 2164 | |
| 2165 | if ((n == nullptr || (items[i].node == n)) && isErrorCode) |
| 2166 | { |
| 2167 | items.remove(i--); |
| 2168 | didSomething = true; |
| 2169 | } |
| 2170 | } |
| 2171 | |
| 2172 | auto lastItem = items.getLast(); |
| 2173 | |
| 2174 | if(didSomething) |
| 2175 | errorBroadcaster.sendMessage(sendNotificationAsync, lastItem.node, lastItem.error); |
| 2176 | } |
| 2177 | |
| 2178 | String ScriptnodeExceptionHandler::getErrorMessage(Error e) |
| 2179 | { |