Fix crash when an invalid URI is parsed and error handling is attempted
authorcrr0004 <crr0004@gmail.com>
Wed, 7 Apr 2021 10:31:41 +0000 (12:31 +0200)
committerKadir Cetinkaya <kadircet@google.com>
Wed, 7 Apr 2021 10:32:33 +0000 (12:32 +0200)
commit43637c0dfeebcf4a4fcbb331f1094662e8882430
tree64f3ef68f5288a837c6589468db043cdad038d43
parentf37ea62e57b5e0e7b52102a2254288e205bfef89
Fix crash when an invalid URI is parsed and error handling is attempted

When you pass in a payload with an invalid URI in a build with assertions enabled, it will crash.
Consuming the error from the failed URI parse prevents the error.

The crash is caused by the [llvm::expected](https://llvm.org/doxygen/classllvm_1_1Expected.html) having protection around trying to deconstruct without consuming the error first.

Reviewed By: kadircet

Differential Revision: https://reviews.llvm.org/D99872
clang-tools-extra/clangd/Protocol.cpp