Unified · Split
| @@ -17,7 +17,7 @@ · 16 unmodified lines | ||
| 17 | 17 | #include "pt2_config.h" |
| 18 | 18 | #include "pt2_tables.h" |
| 19 | 19 | #include "pt2_sampler.h" |
| 20 | −#include "pt2_diskop.h" // changePathToDesktop() | |
| 20 | +#include "pt2_diskop.h" // changePathToDesktop(), changePathToHome() | |
| 21 | 21 | |
| 22 | 22 | #ifndef _WIN32 |
| 23 | 23 | static char oldCwd[PATH_MAX]; |
| @@ -87,7 +87,7 @@ void loadConfig(void) · 63 unmodified lines | ||
| 87 | 87 | proTrackerDotIniFound = true; |
| 88 | 88 | |
| 89 | 89 | // check in ~/.protracker/ |
| 90 | − if (!proTrackerDotIniFound && changePathToDesktop() && chdir(".protracker") == 0) | |
| 90 | + if (!proTrackerDotIniFound && changePathToHome() && chdir(".protracker") == 0) | |
| 91 | 91 | { |
| 92 | 92 | f = fopen("protracker.ini", "r"); |
| 93 | 93 | if (f != NULL) |
| @@ -116,7 +116,7 @@ void loadConfig(void) · 22 unmodified lines | ||
| 116 | 116 | ptDotConfigFound = true; |
| 117 | 117 | |
| 118 | 118 | // check in ~/.protracker/ |
| 119 | − if (!ptDotConfigFound && changePathToDesktop() && chdir(".protracker") == 0) | |
| 119 | + if (!ptDotConfigFound && changePathToHome() && chdir(".protracker") == 0) | |
| 120 | 120 | { |
| 121 | 121 | f = openPTDotConfig(); |
| 122 | 122 | if (f != NULL) |
| @@ -140,7 +140,7 @@ void loadConfig(void) · 17 unmodified lines | ||
| 140 | 140 | colorsDotIniFound = loadColorsDotIni(); |
| 141 | 141 | |
| 142 | 142 | // check in ~/.protracker/ |
| 143 | − if (!colorsDotIniFound && changePathToDesktop() && chdir(".protracker") == 0) | |
| 143 | + if (!colorsDotIniFound && changePathToHome() && chdir(".protracker") == 0) | |
| 144 | 144 | loadColorsDotIni(); |
| 145 | 145 | #endif |
| 146 | 146 | |
| @@ -393,6 +393,17 @@ bool changePathToDesktop(void) · 392 unmodified lines | ||
| 393 | 393 | #endif |
| 394 | 394 | } |
| 395 | 395 | |
| 396 | +#ifndef _WIN32 | |
| 397 | +bool changePathToHome(void) | |
| 398 | +{ | |
| 399 | + char *homePath = getenv("HOME"); | |
| 400 | + if (homePath != NULL && chdir(homePath) == 0) | |
| 401 | + return true; | |
| 402 | + | |
| 403 | + return false; | |
| 404 | +} | |
| 405 | +#endif | |
| 406 | + | |
| 396 | 407 | void setPathFromDiskOpMode(void) |
| 397 | 408 | { |
| 398 | 409 | UNICHAR_CHDIR((diskop.mode == DISKOP_MODE_MOD) ? editor.modulesPathU : editor.samplesPathU); |
| @@ -28,5 +28,8 @@ void freeDiskOpMem(void); · 27 unmodified lines | ||
| 28 | 28 | void freeDiskOpEntryMem(void); |
| 29 | 29 | void setPathFromDiskOpMode(void); |
| 30 | 30 | bool changePathToDesktop(void); |
| 31 | +#ifndef _WIN32 | |
| 32 | +bool changePathToHome(void); | |
| 33 | +#endif | |
| 31 | 34 | void renderDiskOpScreen(void); |
| 32 | 35 | void updateDiskOp(void); |