Skip to content

Commit b11c894

Browse files
committed
fix: Warning CA1417: Do not use the 'OutAttribute' for string parameter
1 parent 6fd8417 commit b11c894

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

Source/ORTS.Settings/InputSettings.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@ enum MapVirtualKeyType
147147
static extern int MapVirtualKey(int code, MapVirtualKeyType type);
148148

149149
[DllImport("user32.dll", CharSet = CharSet.Unicode)]
150-
static extern int GetKeyNameText(int scanCode, [Out] string name, int nameLength);
150+
static extern int GetKeyNameText(int scanCode, [Out] char[] name, int nameLength);
151151
#endregion
152152

153153
// Keyboard scancodes are basically constant; some keyboards have extra buttons (e.g. UK ones tend to have an
@@ -653,9 +653,9 @@ public static Keys GetScanCodeKeys(int scanCode)
653653
public static string GetScanCodeKeyName(int scanCode)
654654
{
655655
var xnaName = Enum.GetName(typeof(Keys), GetScanCodeKeys(scanCode));
656-
var keyName = new String('\0', 32);
657-
var keyNameLength = GetKeyNameText(scanCode << 16, keyName, keyName.Length);
658-
keyName = keyName.Substring(0, keyNameLength);
656+
var keyNameBuffer = new char[32];
657+
var keyNameLength = GetKeyNameText(scanCode << 16, keyNameBuffer, keyNameBuffer.Length);
658+
var keyName = new string(keyNameBuffer, 0, keyNameLength);
659659

660660
if (keyName.Length > 0)
661661
{

0 commit comments

Comments
 (0)