aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.HLE/OsHle
diff options
context:
space:
mode:
authorgdkchan <gab.dark.100@gmail.com>2018-06-23 02:00:44 -0300
committerGitHub <noreply@github.com>2018-06-23 02:00:44 -0300
commitc26ddd6259796e5b0b187989ce3e21b52edb00a8 (patch)
treeff4decb3f102b07a832e7a5d24fa8ba702126906 /Ryujinx.HLE/OsHle
parent5182361f4b59069af1f185db73f7569d3031558a (diff)
Fix 3 graphics related issues (#180)
* Fix 3 graphics related bugs * OGLShader shouldn't be public (yet)
Diffstat (limited to 'Ryujinx.HLE/OsHle')
-rw-r--r--Ryujinx.HLE/OsHle/Services/Nv/NvMap/NvMapHandle.cs6
-rw-r--r--Ryujinx.HLE/OsHle/Services/Nv/NvMap/NvMapIoctl.cs6
2 files changed, 6 insertions, 6 deletions
diff --git a/Ryujinx.HLE/OsHle/Services/Nv/NvMap/NvMapHandle.cs b/Ryujinx.HLE/OsHle/Services/Nv/NvMap/NvMapHandle.cs
index 7902034c..21fce700 100644
--- a/Ryujinx.HLE/OsHle/Services/Nv/NvMap/NvMapHandle.cs
+++ b/Ryujinx.HLE/OsHle/Services/Nv/NvMap/NvMapHandle.cs
@@ -24,14 +24,14 @@ namespace Ryujinx.HLE.OsHle.Services.Nv.NvMap
this.Size = Size;
}
- public long IncrementRefCount()
+ public void IncrementRefCount()
{
- return Interlocked.Increment(ref Dupes);
+ Interlocked.Increment(ref Dupes);
}
public long DecrementRefCount()
{
- return Interlocked.Decrement(ref Dupes);
+ return Interlocked.Decrement(ref Dupes) + 1;
}
}
} \ No newline at end of file
diff --git a/Ryujinx.HLE/OsHle/Services/Nv/NvMap/NvMapIoctl.cs b/Ryujinx.HLE/OsHle/Services/Nv/NvMap/NvMapIoctl.cs
index 376b74c1..43de4edb 100644
--- a/Ryujinx.HLE/OsHle/Services/Nv/NvMap/NvMapIoctl.cs
+++ b/Ryujinx.HLE/OsHle/Services/Nv/NvMap/NvMapIoctl.cs
@@ -163,9 +163,9 @@ namespace Ryujinx.HLE.OsHle.Services.Nv.NvMap
return NvResult.InvalidInput;
}
- long RefCount = Map.DecrementRefCount();
+ long OldRefCount = Map.DecrementRefCount();
- if (RefCount <= 0)
+ if (OldRefCount <= 1)
{
DeleteNvMap(Context, Args.Handle);
@@ -178,7 +178,7 @@ namespace Ryujinx.HLE.OsHle.Services.Nv.NvMap
Args.Flags = FlagNotFreedYet;
}
- Args.RefCount = RefCount;
+ Args.RefCount = OldRefCount;
Args.Size = Map.Size;
AMemoryHelper.Write(Context.Memory, OutputPosition, Args);