diff options
| author | Adelyn <[email protected]> | 2018-08-26 15:25:33 -0600 |
|---|---|---|
| committer | zeyla <[email protected]> | 2018-08-26 14:25:33 -0700 |
| commit | 27ccf2c9c8ce785b54595eaabcebf86db07bf5bc (patch) | |
| tree | 6a19d241626a082ecf06c0cf626463f0ea2df7bd /src/client/dispatch.rs | |
| parent | Move low-level http functions to a raw module (diff) | |
| download | serenity-27ccf2c9c8ce785b54595eaabcebf86db07bf5bc.tar.xz serenity-27ccf2c9c8ce785b54595eaabcebf86db07bf5bc.zip | |
Old message on update (#368)
Diffstat (limited to 'src/client/dispatch.rs')
| -rw-r--r-- | src/client/dispatch.rs | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/client/dispatch.rs b/src/client/dispatch.rs index 3e3bcfa..e201852 100644 --- a/src/client/dispatch.rs +++ b/src/client/dispatch.rs @@ -497,13 +497,20 @@ fn handle_event<H: EventHandler + Send + Sync + 'static>( }); }, DispatchEvent::Model(Event::MessageUpdate(mut event)) => { - update!(event); + let _before = update!(event); let context = context(data, runner_tx, shard_id); let event_handler = Arc::clone(event_handler); threadpool.execute(move || { - event_handler.message_update(context, event); + feature_cache! {{ + let after = CACHE.read().message(event.channel_id, event.id); + if let Some(after) = after { + event_handler.message_update(context, _before, after); + } + } else { + event_handler.message_update(context, event); + }} }); }, DispatchEvent::Model(Event::PresencesReplace(mut event)) => { |