Use try...finally in Player->sendDataPacket() so we don't forget to stop timings

This commit is contained in:
Dylan K. Taylor 2017-09-27 13:52:25 +01:00
parent 1c9b4f3e21
commit 8f63117dac

View File

@ -1119,9 +1119,9 @@ class Player extends Human implements CommandSender, ChunkLoader, IPlayer{
$timings = Timings::getSendDataPacketTimings($packet); $timings = Timings::getSendDataPacketTimings($packet);
$timings->startTiming(); $timings->startTiming();
try{
$this->server->getPluginManager()->callEvent($ev = new DataPacketSendEvent($this, $packet)); $this->server->getPluginManager()->callEvent($ev = new DataPacketSendEvent($this, $packet));
if($ev->isCancelled()){ if($ev->isCancelled()){
$timings->stopTiming();
return false; return false;
} }
@ -1129,13 +1129,13 @@ class Player extends Human implements CommandSender, ChunkLoader, IPlayer{
if($needACK and $identifier !== null){ if($needACK and $identifier !== null){
$this->needACK[$identifier] = false; $this->needACK[$identifier] = false;
$timings->stopTiming();
return $identifier; return $identifier;
} }
$timings->stopTiming();
return true; return true;
}finally{
$timings->stopTiming();
}
} }
/** /**