aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Core/OsHle/CondVar.cs
diff options
context:
space:
mode:
authorgdkchan <gab.dark.100@gmail.com>2018-03-04 20:32:18 -0300
committergdkchan <gab.dark.100@gmail.com>2018-03-04 20:32:18 -0300
commit344fc8a55de471121d3f600cca9e95315d0e502f (patch)
tree60f13e524c071d4c7592022674868aa7b216b9bd /Ryujinx.Core/OsHle/CondVar.cs
parent3edb66f389ac279bdcde26c5682aa39b9bf5f853 (diff)
Try fixing NvFlinger rotation with scaling, return correct error code on WaitSignal timeout, always display window at the center of the screen
Diffstat (limited to 'Ryujinx.Core/OsHle/CondVar.cs')
-rw-r--r--Ryujinx.Core/OsHle/CondVar.cs8
1 files changed, 6 insertions, 2 deletions
diff --git a/Ryujinx.Core/OsHle/CondVar.cs b/Ryujinx.Core/OsHle/CondVar.cs
index 7b3e1852..ac3ba574 100644
--- a/Ryujinx.Core/OsHle/CondVar.cs
+++ b/Ryujinx.Core/OsHle/CondVar.cs
@@ -24,7 +24,7 @@ namespace Ryujinx.Core.OsHle
WaitingThreads = new List<HThread>();
}
- public void WaitForSignal(HThread Thread)
+ public bool WaitForSignal(HThread Thread)
{
int Count = Process.Memory.ReadInt32(CondVarAddress);
@@ -41,12 +41,14 @@ namespace Ryujinx.Core.OsHle
}
else
{
- Process.Scheduler.WaitForSignal(Thread, (int)(Timeout / 1000000));
+ bool Result = Process.Scheduler.WaitForSignal(Thread, (int)(Timeout / 1000000));
lock (WaitingThreads)
{
WaitingThreads.Remove(Thread);
}
+
+ return Result;
}
}
@@ -60,6 +62,8 @@ namespace Ryujinx.Core.OsHle
}
ReleaseCondVarValue();
+
+ return true;
}
public void SetSignal(HThread Thread, int Count)