aboutsummaryrefslogtreecommitdiff
path: root/src/verifier.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/verifier.cc')
-rw-r--r--src/verifier.cc12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/verifier.cc b/src/verifier.cc
index 78021b5..963c2a3 100644
--- a/src/verifier.cc
+++ b/src/verifier.cc
@@ -189,10 +189,14 @@ Result Verifier::Probe(const ProbeCommand* command,
width = frame_width;
height = frame_height;
} else if (command->IsRelative()) {
- x = frame_width * static_cast<uint32_t>(command->GetX());
- y = frame_height * static_cast<uint32_t>(command->GetY());
- width = frame_width * static_cast<uint32_t>(command->GetWidth());
- height = frame_height * static_cast<uint32_t>(command->GetHeight());
+ x = static_cast<uint32_t>(static_cast<float>(frame_width) *
+ command->GetX());
+ y = static_cast<uint32_t>(static_cast<float>(frame_height) *
+ command->GetY());
+ width = static_cast<uint32_t>(static_cast<float>(frame_width) *
+ command->GetWidth());
+ height = static_cast<uint32_t>(static_cast<float>(frame_height) *
+ command->GetHeight());
} else {
x = static_cast<uint32_t>(command->GetX());
y = static_cast<uint32_t>(command->GetY());