comparison util.c @ 1295:96ad1b9bbb3a

Make save directory configurable. Satisfies ticket:4
author Michael Pavone <pavone@retrodev.com>
date Tue, 21 Mar 2017 21:40:47 -0700
parents 5905593d6828
children 5ceb316c479a
comparison
equal deleted inserted replaced
1294:a719e2c98b54 1295:96ad1b9bbb3a
679 char const *get_config_dir() 679 char const *get_config_dir()
680 { 680 {
681 return SDL_AndroidGetInternalStoragePath(); 681 return SDL_AndroidGetInternalStoragePath();
682 } 682 }
683 683
684 char const *get_save_dir() 684 char const *get_userdata_dir()
685 { 685 {
686 return SDL_AndroidGetInternalStoragePath(); 686 return SDL_AndroidGetInternalStoragePath();
687 } 687 }
688 688
689 #else 689 #else
727 return ret; 727 return ret;
728 } 728 }
729 729
730 730
731 #ifdef _WIN32 731 #ifdef _WIN32
732 char const *get_save_base_dir() 732 char const *get_userdata_dir()
733 { 733 {
734 static char path[MAX_PATH]; 734 static char path[MAX_PATH];
735 if (S_OK == SHGetFolderPath(NULL, CSIDL_LOCAL_APPDATA | CSIDL_FLAG_CREATE, NULL, 0, path)) 735 if (S_OK == SHGetFolderPath(NULL, CSIDL_LOCAL_APPDATA | CSIDL_FLAG_CREATE, NULL, 0, path))
736 { 736 {
737 return path; 737 return path;
738 } 738 }
739 return NULL; 739 return NULL;
740 } 740 }
741
742 char const *get_config_dir()
743 {
744 return get_userdata_dir();
745 }
741 #define CONFIG_PREFIX "" 746 #define CONFIG_PREFIX ""
742 #define SAVE_PREFIX "" 747 #define SAVE_PREFIX ""
743 748
744 #else 749 #else
745 750
746 #define get_save_base_dir get_home_dir
747 #define CONFIG_PREFIX "/.config" 751 #define CONFIG_PREFIX "/.config"
748 #define SAVE_PREFIX "/.local/share" 752 #define USERDATA_SUFFIX "/.local/share"
749
750 #endif
751 753
752 char const *get_config_dir() 754 char const *get_config_dir()
753 { 755 {
754 static char* confdir; 756 static char* confdir;
755 if (!confdir) { 757 if (!confdir) {
756 char const *base = get_save_base_dir(); 758 char const *base = get_home_dir();
757 if (base) { 759 if (base) {
758 confdir = alloc_concat(base, CONFIG_PREFIX PATH_SEP "blastem"); 760 confdir = alloc_concat(base, CONFIG_PREFIX PATH_SEP "blastem");
759 } 761 }
760 } 762 }
761 return confdir; 763 return confdir;
762 } 764 }
763 765
764 char const *get_save_dir() 766 char const *get_userdata_dir()
765 { 767 {
766 static char* savedir; 768 static char* savedir;
767 if (!savedir) { 769 if (!savedir) {
768 char const *base = get_save_base_dir(); 770 char const *base = get_home_dir();
769 if (base) { 771 if (base) {
770 savedir = alloc_concat(base, SAVE_PREFIX PATH_SEP "blastem"); 772 savedir = alloc_concat(base, USERDATA_SUFFIX);
771 } 773 }
772 } 774 }
773 return savedir; 775 return savedir;
774 } 776 }
775 777
776 #endif 778
779 #endif
780
781
782
783 #endif