diff --git a/Project.xml b/Project.xml
index f2d1e710031..20142d43250 100644
--- a/Project.xml
+++ b/Project.xml
@@ -189,7 +189,7 @@
-
+
diff --git a/source/Main.hx b/source/Main.hx
index 8731d6fb075..bf01f0001e1 100644
--- a/source/Main.hx
+++ b/source/Main.hx
@@ -23,7 +23,7 @@ import crowplexus.iris.Iris;
import psychlua.HScript.HScriptInfos;
#end
-#if linux
+#if (linux || mac)
import lime.graphics.Image;
#end
@@ -192,7 +192,7 @@ class Main extends Sprite
}
#end
- #if linux
+ #if (linux || mac) // fix the app icon not showing up on the Linux Panel / Mac Dock
var icon = Image.fromFile("icon.png");
Lib.current.stage.window.setIcon(icon);
#end
diff --git a/source/backend/Song.hx b/source/backend/Song.hx
index 910d1578cbe..e704b0fe73b 100644
--- a/source/backend/Song.hx
+++ b/source/backend/Song.hx
@@ -126,7 +126,11 @@ class Song
if(folder == null) folder = jsonInput;
PlayState.SONG = getChart(jsonInput, folder);
loadedSongName = folder;
- chartPath = _lastPath.replace('/', '\\');
+ chartPath = _lastPath;
+ #if windows
+ // prevent any saving errors by fixing the path on Windows (being the only OS to ever use backslashes instead of forward slashes for paths)
+ chartPath = chartPath.replace('/', '\\');
+ #end
StageData.loadDirectory(PlayState.SONG);
return PlayState.SONG;
}
@@ -179,4 +183,4 @@ class Song
}
return songJson;
}
-}
\ No newline at end of file
+}