| diff --git a/mojo/core/core.cc b/mojo/core/core.cc |
| index 8422ec2..3ffa640 100644 |
| --- a/mojo/core/core.cc |
| +++ b/mojo/core/core.cc |
| @@ -21,7 +21,7 @@ |
| #include "base/strings/string_piece.h" |
| #include "base/threading/thread_task_runner_handle.h" |
| #include "base/time/time.h" |
| -#include "base/trace_event/memory_dump_manager.h" |
| +// #include "base/trace_event/memory_dump_manager.h" |
| #include "build/build_config.h" |
| #include "mojo/core/channel.h" |
| #include "mojo/core/configuration.h" |
| @@ -127,8 +127,8 @@ void RunMojoProcessErrorHandler(ProcessDisconnectHandler* disconnect_handler, |
| |
| Core::Core() { |
| handles_.reset(new HandleTable); |
| - base::trace_event::MemoryDumpManager::GetInstance()->RegisterDumpProvider( |
| - handles_.get(), "MojoHandleTable", nullptr); |
| + // base::trace_event::MemoryDumpManager::GetInstance()->RegisterDumpProvider( |
| + // handles_.get(), "MojoHandleTable", nullptr); |
| } |
| |
| Core::~Core() { |
| @@ -142,8 +142,8 @@ Core::~Core() { |
| base::BindOnce(&Core::PassNodeControllerToIOThread, |
| base::Passed(&node_controller_))); |
| } |
| - base::trace_event::MemoryDumpManager::GetInstance() |
| - ->UnregisterAndDeleteDumpProviderSoon(std::move(handles_)); |
| + // base::trace_event::MemoryDumpManager::GetInstance() |
| + // ->UnregisterAndDeleteDumpProviderSoon(std::move(handles_)); |
| } |
| |
| void Core::SetIOTaskRunner(scoped_refptr<base::TaskRunner> io_task_runner) { |
| diff --git a/mojo/core/user_message_impl.cc b/mojo/core/user_message_impl.cc |
| index d4a4da1..9cb8284 100644 |
| --- a/mojo/core/user_message_impl.cc |
| +++ b/mojo/core/user_message_impl.cc |
| @@ -13,10 +13,10 @@ |
| #include "base/no_destructor.h" |
| #include "base/numerics/safe_conversions.h" |
| #include "base/numerics/safe_math.h" |
| -#include "base/trace_event/memory_allocator_dump.h" |
| -#include "base/trace_event/memory_dump_manager.h" |
| -#include "base/trace_event/memory_dump_provider.h" |
| -#include "base/trace_event/trace_event.h" |
| +// #include "base/trace_event/memory_allocator_dump.h" |
| +// #include "base/trace_event/memory_dump_manager.h" |
| +// #include "base/trace_event/memory_dump_provider.h" |
| +// #include "base/trace_event/trace_event.h" |
| #include "mojo/core/core.h" |
| #include "mojo/core/node_channel.h" |
| #include "mojo/core/node_controller.h" |
| @@ -271,36 +271,36 @@ void DecrementMessageCount() { |
| base::subtle::NoBarrier_AtomicIncrement(&g_message_count, -1); |
| } |
| |
| -class MessageMemoryDumpProvider : public base::trace_event::MemoryDumpProvider { |
| - public: |
| - MessageMemoryDumpProvider() { |
| - base::trace_event::MemoryDumpManager::GetInstance()->RegisterDumpProvider( |
| - this, "MojoMessages", nullptr); |
| - } |
| - |
| - ~MessageMemoryDumpProvider() override { |
| - base::trace_event::MemoryDumpManager::GetInstance()->UnregisterDumpProvider( |
| - this); |
| - } |
| - |
| - private: |
| - // base::trace_event::MemoryDumpProvider: |
| - bool OnMemoryDump(const base::trace_event::MemoryDumpArgs& args, |
| - base::trace_event::ProcessMemoryDump* pmd) override { |
| - auto* dump = pmd->CreateAllocatorDump("mojo/messages"); |
| - dump->AddScalar(base::trace_event::MemoryAllocatorDump::kNameObjectCount, |
| - base::trace_event::MemoryAllocatorDump::kUnitsObjects, |
| - base::subtle::NoBarrier_Load(&g_message_count)); |
| - return true; |
| - } |
| - |
| - DISALLOW_COPY_AND_ASSIGN(MessageMemoryDumpProvider); |
| -}; |
| - |
| -void EnsureMemoryDumpProviderExists() { |
| - static base::NoDestructor<MessageMemoryDumpProvider> provider; |
| - ALLOW_UNUSED_LOCAL(provider); |
| -} |
| +// class MessageMemoryDumpProvider : public base::trace_event::MemoryDumpProvider { |
| +// public: |
| +// MessageMemoryDumpProvider() { |
| +// base::trace_event::MemoryDumpManager::GetInstance()->RegisterDumpProvider( |
| +// this, "MojoMessages", nullptr); |
| +// } |
| + |
| +// ~MessageMemoryDumpProvider() override { |
| +// base::trace_event::MemoryDumpManager::GetInstance()->UnregisterDumpProvider( |
| +// this); |
| +// } |
| + |
| +// private: |
| +// // base::trace_event::MemoryDumpProvider: |
| +// bool OnMemoryDump(const base::trace_event::MemoryDumpArgs& args, |
| +// base::trace_event::ProcessMemoryDump* pmd) override { |
| +// auto* dump = pmd->CreateAllocatorDump("mojo/messages"); |
| +// dump->AddScalar(base::trace_event::MemoryAllocatorDump::kNameObjectCount, |
| +// base::trace_event::MemoryAllocatorDump::kUnitsObjects, |
| +// base::subtle::NoBarrier_Load(&g_message_count)); |
| +// return true; |
| +// } |
| + |
| +// DISALLOW_COPY_AND_ASSIGN(MessageMemoryDumpProvider); |
| +// }; |
| + |
| +// void EnsureMemoryDumpProviderExists() { |
| +// static base::NoDestructor<MessageMemoryDumpProvider> provider; |
| +// ALLOW_UNUSED_LOCAL(provider); |
| +// } |
| |
| } // namespace |
| |
| @@ -648,7 +648,7 @@ void UserMessageImpl::FailHandleSerializationForTesting(bool fail) { |
| |
| UserMessageImpl::UserMessageImpl(ports::UserMessageEvent* message_event) |
| : ports::UserMessage(&kUserMessageTypeInfo), message_event_(message_event) { |
| - EnsureMemoryDumpProviderExists(); |
| + // EnsureMemoryDumpProviderExists(); |
| IncrementMessageCount(); |
| } |
| |
| @@ -667,7 +667,7 @@ UserMessageImpl::UserMessageImpl(ports::UserMessageEvent* message_event, |
| header_size_(header_size), |
| user_payload_(user_payload), |
| user_payload_size_(user_payload_size) { |
| - EnsureMemoryDumpProviderExists(); |
| + // EnsureMemoryDumpProviderExists(); |
| IncrementMessageCount(); |
| } |
| |
| diff --git a/mojo/public/cpp/bindings/lib/message_dumper.cc b/mojo/public/cpp/bindings/lib/message_dumper.cc |
| index f187e45..35696bb 100644 |
| --- a/mojo/public/cpp/bindings/lib/message_dumper.cc |
| +++ b/mojo/public/cpp/bindings/lib/message_dumper.cc |
| @@ -22,33 +22,33 @@ base::FilePath& DumpDirectory() { |
| return *dump_directory; |
| } |
| |
| -void WriteMessage(uint32_t identifier, |
| - const mojo::MessageDumper::MessageEntry& entry) { |
| - static uint64_t num = 0; |
| - |
| - if (!entry.interface_name) |
| - return; |
| - |
| - base::FilePath message_directory = |
| - DumpDirectory() |
| - .AppendASCII(entry.interface_name) |
| - .AppendASCII(base::NumberToString(identifier)); |
| - |
| - if (!base::DirectoryExists(message_directory) && |
| - !base::CreateDirectory(message_directory)) { |
| - LOG(ERROR) << "Failed to create" << message_directory.value(); |
| - return; |
| - } |
| - |
| - std::string filename = |
| - base::NumberToString(num++) + "." + entry.method_name + ".mojomsg"; |
| - base::FilePath path = message_directory.AppendASCII(filename); |
| - base::File file(path, |
| - base::File::FLAG_WRITE | base::File::FLAG_CREATE_ALWAYS); |
| - |
| - file.WriteAtCurrentPos(reinterpret_cast<const char*>(entry.data_bytes.data()), |
| - static_cast<int>(entry.data_bytes.size())); |
| -} |
| +// void WriteMessage(uint32_t identifier, |
| +// const mojo::MessageDumper::MessageEntry& entry) { |
| +// static uint64_t num = 0; |
| + |
| +// if (!entry.interface_name) |
| +// return; |
| + |
| +// base::FilePath message_directory = |
| +// DumpDirectory() |
| +// .AppendASCII(entry.interface_name) |
| +// .AppendASCII(base::NumberToString(identifier)); |
| + |
| +// if (!base::DirectoryExists(message_directory) && |
| +// !base::CreateDirectory(message_directory)) { |
| +// LOG(ERROR) << "Failed to create" << message_directory.value(); |
| +// return; |
| +// } |
| + |
| +// std::string filename = |
| +// base::NumberToString(num++) + "." + entry.method_name + ".mojomsg"; |
| +// base::FilePath path = message_directory.AppendASCII(filename); |
| +// base::File file(path, |
| +// base::File::FLAG_WRITE | base::File::FLAG_CREATE_ALWAYS); |
| + |
| +// file.WriteAtCurrentPos(reinterpret_cast<const char*>(entry.data_bytes.data()), |
| +// static_cast<int>(entry.data_bytes.size())); |
| +// } |
| |
| } // namespace |
| |
| @@ -71,17 +71,17 @@ MessageDumper::MessageDumper() : identifier_(base::RandUint64()) {} |
| MessageDumper::~MessageDumper() {} |
| |
| bool MessageDumper::Accept(mojo::Message* message) { |
| - MessageEntry entry(message->data(), message->data_num_bytes(), |
| - message->interface_name(), message->method_name()); |
| + // MessageEntry entry(message->data(), message->data_num_bytes(), |
| + // "unknown interface", "unknown name"); |
| |
| - static base::NoDestructor<scoped_refptr<base::TaskRunner>> task_runner( |
| - base::CreateSequencedTaskRunnerWithTraits( |
| - {base::MayBlock(), base::TaskPriority::USER_BLOCKING, |
| - base::TaskShutdownBehavior::SKIP_ON_SHUTDOWN})); |
| + // static base::NoDestructor<scoped_refptr<base::TaskRunner>> task_runner( |
| + // base::CreateSequencedTaskRunnerWithTraits( |
| + // {base::MayBlock(), base::TaskPriority::USER_BLOCKING, |
| + // base::TaskShutdownBehavior::SKIP_ON_SHUTDOWN})); |
| |
| - (*task_runner) |
| - ->PostTask(FROM_HERE, |
| - base::BindOnce(&WriteMessage, identifier_, std::move(entry))); |
| + // (*task_runner) |
| + // ->PostTask(FROM_HERE, |
| + // base::BindOnce(&WriteMessage, identifier_, std::move(entry))); |
| return true; |
| } |
| |
| diff --git a/mojo/public/cpp/system/file_data_pipe_producer.cc b/mojo/public/cpp/system/file_data_pipe_producer.cc |
| index 842fe8f..6038bbe 100644 |
| --- a/mojo/public/cpp/system/file_data_pipe_producer.cc |
| +++ b/mojo/public/cpp/system/file_data_pipe_producer.cc |
| @@ -266,13 +266,15 @@ void FileDataPipeProducer::WriteFromPath(const base::FilePath& path, |
| |
| void FileDataPipeProducer::InitializeNewRequest(CompletionCallback callback) { |
| DCHECK(!file_sequence_state_); |
| - auto file_task_runner = base::CreateSequencedTaskRunnerWithTraits( |
| - {base::MayBlock(), base::TaskPriority::BACKGROUND}); |
| - file_sequence_state_ = new FileSequenceState( |
| - std::move(producer_), file_task_runner, |
| - base::BindOnce(&FileDataPipeProducer::OnWriteComplete, |
| - weak_factory_.GetWeakPtr(), std::move(callback)), |
| - base::SequencedTaskRunnerHandle::Get(), std::move(observer_)); |
| + |
| + LOG(FATAL) << "unsupported in libchrome"; |
| + // auto file_task_runner = base::CreateSequencedTaskRunnerWithTraits( |
| + // {base::MayBlock(), base::TaskPriority::BACKGROUND}); |
| + // file_sequence_state_ = new FileSequenceState( |
| + // std::move(producer_), file_task_runner, |
| + // base::BindOnce(&FileDataPipeProducer::OnWriteComplete, |
| + // weak_factory_.GetWeakPtr(), std::move(callback)), |
| + // base::SequencedTaskRunnerHandle::Get(), std::move(observer_)); |
| } |
| |
| void FileDataPipeProducer::OnWriteComplete( |
| diff --git a/mojo/public/tools/bindings/mojom_bindings_generator.py b/mojo/public/tools/bindings/mojom_bindings_generator.py |
| index affbe79..57a8031 100755 |
| --- a/mojo/public/tools/bindings/mojom_bindings_generator.py |
| +++ b/mojo/public/tools/bindings/mojom_bindings_generator.py |
| @@ -174,7 +174,8 @@ class MojomProcessor(object): |
| MakeImportStackMessage(imported_filename_stack + [rel_filename.path]) |
| sys.exit(1) |
| |
| - tree = _UnpickleAST(_GetPicklePath(rel_filename, args.output_dir)) |
| + tree = _UnpickleAST(_FindPicklePath(rel_filename, args.gen_directories + |
| + [args.output_dir])) |
| dirname = os.path.dirname(rel_filename.path) |
| |
| # Process all our imports first and collect the module object for each. |
| @@ -256,6 +257,16 @@ def _Generate(args, remaining_args): |
| return 0 |
| |
| |
| +def _FindPicklePath(rel_filename, search_dirs): |
| + filename, _ = os.path.splitext(rel_filename.relative_path()) |
| + pickle_path = filename + '.p' |
| + for search_dir in search_dirs: |
| + path = os.path.join(search_dir, pickle_path) |
| + if os.path.isfile(path): |
| + return path |
| + raise Exception("%s: Error: Could not find file in %r" % (pickle_path, search_dirs)) |
| + |
| + |
| def _GetPicklePath(rel_filename, output_dir): |
| filename, _ = os.path.splitext(rel_filename.relative_path()) |
| pickle_path = filename + '.p' |
| @@ -402,6 +413,9 @@ def main(): |
| metavar="GENERATORS", |
| default="c++,javascript,java", |
| help="comma-separated list of generators") |
| + generate_parser.add_argument( |
| + "--gen_dir", dest="gen_directories", action="append", metavar="directory", |
| + default=[], help="add a directory to be searched for the syntax trees.") |
| generate_parser.add_argument( |
| "-I", dest="import_directories", action="append", metavar="directory", |
| default=[], |