Fossil SCM

Check on writability of the home directory appears too restricted. Writability of the $HOME/.fossil file should be sufficient for fossil to operate.

jan.nijtmans 2013-03-04 20:06 UTC trunk
Commit 1e90d43d764fcf33ffc4be0408144ee7c3457452
1 file changed +3 -5
+3 -5
--- src/db.c
+++ src/db.c
@@ -826,15 +826,10 @@
826826
}
827827
#endif
828828
if( file_isdir(zHome)!=1 ){
829829
fossil_fatal("invalid home directory: %s", zHome);
830830
}
831
-#if !defined(_WIN32)
832
- if( file_access(zHome, W_OK) ){
833
- fossil_fatal("home directory %s must be writeable", zHome);
834
- }
835
-#endif
836831
g.zHome = mprintf("%/", zHome);
837832
#if defined(_WIN32) || defined(__CYGWIN__)
838833
/* . filenames give some window systems problems and many apps problems */
839834
zDbName = mprintf("%//_fossil", zHome);
840835
#else
@@ -841,10 +836,13 @@
841836
zDbName = mprintf("%s/.fossil", zHome);
842837
#endif
843838
if( file_size(zDbName)<1024*3 ){
844839
db_init_database(zDbName, zConfigSchema, (char*)0);
845840
}
841
+ if( file_access(zDbName, W_OK) ){
842
+ fossil_fatal("configuration file %s must be writeable", zDbName);
843
+ }
846844
if( useAttach ){
847845
db_open_or_attach(zDbName, "configdb", &g.useAttach);
848846
g.dbConfig = 0;
849847
g.zConfigDbType = 0;
850848
}else{
851849
--- src/db.c
+++ src/db.c
@@ -826,15 +826,10 @@
826 }
827 #endif
828 if( file_isdir(zHome)!=1 ){
829 fossil_fatal("invalid home directory: %s", zHome);
830 }
831 #if !defined(_WIN32)
832 if( file_access(zHome, W_OK) ){
833 fossil_fatal("home directory %s must be writeable", zHome);
834 }
835 #endif
836 g.zHome = mprintf("%/", zHome);
837 #if defined(_WIN32) || defined(__CYGWIN__)
838 /* . filenames give some window systems problems and many apps problems */
839 zDbName = mprintf("%//_fossil", zHome);
840 #else
@@ -841,10 +836,13 @@
841 zDbName = mprintf("%s/.fossil", zHome);
842 #endif
843 if( file_size(zDbName)<1024*3 ){
844 db_init_database(zDbName, zConfigSchema, (char*)0);
845 }
 
 
 
846 if( useAttach ){
847 db_open_or_attach(zDbName, "configdb", &g.useAttach);
848 g.dbConfig = 0;
849 g.zConfigDbType = 0;
850 }else{
851
--- src/db.c
+++ src/db.c
@@ -826,15 +826,10 @@
826 }
827 #endif
828 if( file_isdir(zHome)!=1 ){
829 fossil_fatal("invalid home directory: %s", zHome);
830 }
 
 
 
 
 
831 g.zHome = mprintf("%/", zHome);
832 #if defined(_WIN32) || defined(__CYGWIN__)
833 /* . filenames give some window systems problems and many apps problems */
834 zDbName = mprintf("%//_fossil", zHome);
835 #else
@@ -841,10 +836,13 @@
836 zDbName = mprintf("%s/.fossil", zHome);
837 #endif
838 if( file_size(zDbName)<1024*3 ){
839 db_init_database(zDbName, zConfigSchema, (char*)0);
840 }
841 if( file_access(zDbName, W_OK) ){
842 fossil_fatal("configuration file %s must be writeable", zDbName);
843 }
844 if( useAttach ){
845 db_open_or_attach(zDbName, "configdb", &g.useAttach);
846 g.dbConfig = 0;
847 g.zConfigDbType = 0;
848 }else{
849

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button