Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(30)

Side by Side Diff: extensions/browser/api/mime_handler_private/mime_handler_private.h

Issue 885563002: Fix a crash in MimeHandlerServiceImpl::AbortStream(). (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: GN Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef EXTENSIONS_BROWSER_API_MIME_HANDLER_PRIVATE_MIME_HANDLER_PRIVATE_H_ 5 #ifndef EXTENSIONS_BROWSER_API_MIME_HANDLER_PRIVATE_MIME_HANDLER_PRIVATE_H_
6 #define EXTENSIONS_BROWSER_API_MIME_HANDLER_PRIVATE_MIME_HANDLER_PRIVATE_H_ 6 #define EXTENSIONS_BROWSER_API_MIME_HANDLER_PRIVATE_MIME_HANDLER_PRIVATE_H_
7 7
8 #include "base/memory/weak_ptr.h" 8 #include "base/memory/weak_ptr.h"
9 #include "extensions/common/api/mime_handler.mojom.h" 9 #include "extensions/common/api/mime_handler.mojom.h"
10 10
11 namespace extensions { 11 namespace extensions {
12 class StreamContainer; 12 class StreamContainer;
13 class MimeHandlerServiceImplTest;
13 14
14 class MimeHandlerServiceImpl 15 class MimeHandlerServiceImpl
15 : public mojo::InterfaceImpl<mime_handler::MimeHandlerService> { 16 : public mojo::InterfaceImpl<mime_handler::MimeHandlerService> {
16 public: 17 public:
17 static void Create( 18 static void Create(
18 base::WeakPtr<StreamContainer> stream_container, 19 base::WeakPtr<StreamContainer> stream_container,
19 mojo::InterfaceRequest<mime_handler::MimeHandlerService> request); 20 mojo::InterfaceRequest<mime_handler::MimeHandlerService> request);
20 21
21 private: 22 private:
23 friend class MimeHandlerServiceImplTest;
24
22 explicit MimeHandlerServiceImpl( 25 explicit MimeHandlerServiceImpl(
23 base::WeakPtr<StreamContainer> stream_container); 26 base::WeakPtr<StreamContainer> stream_container);
24 ~MimeHandlerServiceImpl() override; 27 ~MimeHandlerServiceImpl() override;
25 28
26 // mime_handler::MimeHandlerService overrides. 29 // mime_handler::MimeHandlerService overrides.
27 void GetStreamInfo(const mojo::Callback<void(mime_handler::StreamInfoPtr)>& 30 void GetStreamInfo(const mojo::Callback<void(mime_handler::StreamInfoPtr)>&
28 callback) override; 31 callback) override;
29 void AbortStream(const mojo::Callback<void()>& callback) override; 32 void AbortStream(const mojo::Callback<void()>& callback) override;
30 33
31 // Invoked by the callback used to abort |stream_|. 34 // Invoked by the callback used to abort |stream_|.
(...skipping 12 matching lines...) Expand all
44 template <> 47 template <>
45 struct TypeConverter<extensions::mime_handler::StreamInfoPtr, 48 struct TypeConverter<extensions::mime_handler::StreamInfoPtr,
46 extensions::StreamContainer> { 49 extensions::StreamContainer> {
47 static extensions::mime_handler::StreamInfoPtr Convert( 50 static extensions::mime_handler::StreamInfoPtr Convert(
48 const extensions::StreamContainer& stream); 51 const extensions::StreamContainer& stream);
49 }; 52 };
50 53
51 } // namespace mojo 54 } // namespace mojo
52 55
53 #endif // EXTENSIONS_BROWSER_API_MIME_HANDLER_PRIVATE_MIME_HANDLER_PRIVATE_H_ 56 #endif // EXTENSIONS_BROWSER_API_MIME_HANDLER_PRIVATE_MIME_HANDLER_PRIVATE_H_
OLDNEW
« no previous file with comments | « extensions/BUILD.gn ('k') | extensions/browser/api/mime_handler_private/mime_handler_private.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698