feather-rs / feather

A Minecraft server implementation in Rust
Apache License 2.0
2.6k stars 143 forks source link

Task panicked on long chat message #412

Closed evikser closed 3 years ago

evikser commented 3 years ago

Description

Looks like there is problem with handling compressed messages from client. Similar to #110

Reproduction Steps

  1. Connect to feather server.
  2. Send long chat message. (>= compression_threshold-2)

What You Expected to Happen

Message appears in the chat.

What Actually Happened

Player disconnected from server.

Screenshots and Logs

thread 'tokio-runtime-worker' panicked at 'split_off out of bounds: 260 <= 34', /Users/evikser/.cargo/registry/src/github.com-1ecc6299db9ec823/bytes-0.5.6/src/bytes_mut.rs:289:9
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
thread 'tokio-runtime-worker' panicked at 'task panicked: JoinError::Panic(...)', feather/server/src/connection_worker.rs:146:52
2021-04-18 15:11:33,338 DEBUG [feather_server] Removed client for evikser
2021-04-18 15:11:33,339 INFO  [feather_server::systems::chat] Component(TextComponent { value: Translate { translate: Custom("multiplayer.player.left"), with: [String("evikser")] }, color: None, bold: None, italic: None, underlined: None, strikethrough: None, obfuscated: None, insertion: None, click: None, hover: None, extra: None })

Your Environment