Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Conversation

@gaaclarke
Copy link
Member

@gaaclarke gaaclarke commented Jul 27, 2022

I noticed a few simple optimizations while reading through the desktop code:

  1. One lookup into callbacks_ instead of 2
  2. Removed copy of the channel name
  3. Removed copy of the callback closure

Pre-launch Checklist

  • I read the Contributor Guide and followed the process outlined there for submitting PRs.
  • I read the Tree Hygiene wiki page, which explains my responsibilities.
  • I read and followed the Flutter Style Guide and the C++, Objective-C, Java style guides.
  • I listed at least one issue that this PR fixes in the description above.
  • I added new tests to check the change I am making or feature I am adding, or Hixie said the PR is test-exempt. See testing the engine for instructions on
    writing and running engine tests.
  • I updated/added relevant documentation (doc comments with ///).
  • I signed the CLA.
  • All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

@flutter-dashboard
Copy link

It looks like this pull request may not have tests. Please make sure to add tests before merging. If you need an exemption to this rule, contact Hixie on the #hackers channel in Chat (don't just cc him here, he won't see it! He's on Discord!).

If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix?

Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing.

const std::function<void(void)>& input_block_cb,
const std::function<void(void)>& input_unblock_cb) {
std::string channel(message.channel);
const std::string& channel = message.channel;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

message.channel is a const char*, so I'm not sure what this is supposed to be changing. AFAICT this is doing the same thing, but much more mysteriously since it relies on understanding reference lifetime extension of an anonymous std::string instance.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

@gaaclarke gaaclarke requested a review from stuartmorgan-g July 28, 2022 16:49
Copy link
Contributor

@stuartmorgan-g stuartmorgan-g left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@Hixie
Copy link
Contributor

Hixie commented Jul 28, 2022

test-exempt: refactor with no semantic change

@chinmaygarde
Copy link
Member

The presub failures need a rebase and are unrelated to the patch.

@gaaclarke gaaclarke force-pushed the faster-desktop-dispatch branch from b0e91de to ad3a55e Compare July 28, 2022 20:12
@gaaclarke gaaclarke merged commit 57ac2d3 into flutter:main Jul 28, 2022
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jul 28, 2022
betrevisan pushed a commit to betrevisan/engine that referenced this pull request Jul 29, 2022
* optimized IncomingMessageDispatcher::HandleMessage a bit.

* removed std::string ref
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants