fix: segfault in SerialChooserController (#25969)
* fix: segfault in SerialChooserController * Remove temporary testing
This commit is contained in:
parent
6a0221297e
commit
87d3f3584c
2 changed files with 4 additions and 12 deletions
|
@ -77,11 +77,13 @@ SerialChooserController::SerialChooserController(
|
|||
DCHECK(chooser_context_);
|
||||
chooser_context_->GetPortManager()->GetDevices(base::BindOnce(
|
||||
&SerialChooserController::OnGetDevices, weak_factory_.GetWeakPtr()));
|
||||
observer_.Add(chooser_context_.get());
|
||||
}
|
||||
|
||||
SerialChooserController::~SerialChooserController() {
|
||||
RunCallback(/*port=*/nullptr);
|
||||
if (chooser_context_) {
|
||||
chooser_context_->RemovePortObserver(this);
|
||||
}
|
||||
}
|
||||
|
||||
api::Session* SerialChooserController::GetSession() {
|
||||
|
@ -114,10 +116,6 @@ void SerialChooserController::OnPortRemoved(
|
|||
}
|
||||
}
|
||||
|
||||
void SerialChooserController::OnPortManagerConnectionError() {
|
||||
observer_.RemoveAll();
|
||||
}
|
||||
|
||||
void SerialChooserController::OnDeviceChosen(const std::string& port_id) {
|
||||
if (port_id.empty()) {
|
||||
RunCallback(/*port=*/nullptr);
|
||||
|
|
|
@ -10,7 +10,6 @@
|
|||
|
||||
#include "base/macros.h"
|
||||
#include "base/memory/weak_ptr.h"
|
||||
#include "base/scoped_observer.h"
|
||||
#include "base/strings/string16.h"
|
||||
#include "content/public/browser/serial_chooser.h"
|
||||
#include "content/public/browser/web_contents.h"
|
||||
|
@ -44,7 +43,7 @@ class SerialChooserController final : public SerialChooserContext::PortObserver,
|
|||
// SerialChooserContext::PortObserver:
|
||||
void OnPortAdded(const device::mojom::SerialPortInfo& port) override;
|
||||
void OnPortRemoved(const device::mojom::SerialPortInfo& port) override;
|
||||
void OnPortManagerConnectionError() override;
|
||||
void OnPortManagerConnectionError() override {}
|
||||
|
||||
private:
|
||||
api::Session* GetSession();
|
||||
|
@ -59,11 +58,6 @@ class SerialChooserController final : public SerialChooserContext::PortObserver,
|
|||
url::Origin embedding_origin_;
|
||||
|
||||
base::WeakPtr<SerialChooserContext> chooser_context_;
|
||||
ScopedObserver<SerialChooserContext,
|
||||
SerialChooserContext::PortObserver,
|
||||
&SerialChooserContext::AddPortObserver,
|
||||
&SerialChooserContext::RemovePortObserver>
|
||||
observer_{this};
|
||||
|
||||
std::vector<device::mojom::SerialPortInfoPtr> ports_;
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue