diff --git a/source/core/gameinput.cpp b/source/core/gameinput.cpp
index f26ca065f..afa926569 100644
--- a/source/core/gameinput.cpp
+++ b/source/core/gameinput.cpp
@@ -183,14 +183,18 @@ void getInput(const double scaleAdjust, PlayerAngles* const plrAngles, InputPack
 	HIDInput hidInput{};
 	getHidInput(&hidInput);
 	ApplyGlobalInput(&hidInput, &inputBuffer);
-	gi->GetInput(&hidInput, &inputBuffer, &input, !SyncInput() ? scaleAdjust : 1.);
 
 	// Directly update the camera angles if we're unsynchronised.
 	if (!SyncInput())
 	{
+		gi->GetInput(&hidInput, &inputBuffer, &input, scaleAdjust);
 		plrAngles->CameraAngles.Yaw += DAngle::fromDeg(input.avel);
 		plrAngles->CameraAngles.Pitch += DAngle::fromDeg(input.horz);
 	}
+	else
+	{
+		gi->GetInput(&hidInput, &inputBuffer, &input, 1);
+	}
 
 	if (packet)
 	{