#include "grv.h" #ifdef __unix__ #include #include #include #endif void goto_grv_dir(void) { /* On Unix, save stuff in a ~/.grv directory */ #ifdef __unix__ { char *home = getenv("HOME"); char *grvd = getenv("GRV_DIR"); int rv; if ( !grvd ) { grvd = alloca(strlen(home)+6); if ( !grvd || !home ) return; /* Not much we can do here... */ sprintf(grvd, "%s/.grv", home); } rv = chdir(grvd); /* Change to .grv directory */ if (rv && errno == ENOENT) { /* Try to create it */ mkdir(grvd, 0777); chdir(grvd); } } #endif }