diff --git a/src/xpdev/ini_file.c b/src/xpdev/ini_file.c
index e479a247dd47063b08643171c84aa8d8a627ef18..48f3d889746d811f0406151bf5c09c636f20ed93 100644
--- a/src/xpdev/ini_file.c
+++ b/src/xpdev/ini_file.c
@@ -881,14 +881,20 @@ char* iniFileName(char* dest, size_t maxlen, const char* indir, const char* infn
 
 		if(gethostname(hostname,sizeof(hostname))==0) {
 			safe_snprintf(dest,maxlen,"%s%s.%s%s",dir,fname,hostname,ext);
-			if(fexistcase(dest))
+			if(fexistcase(dest))		/* path/file.host.domain.ini */
 				return(dest);
+			if((p=strchr(hostname,'.'))!=NULL) {
+				*p=0;
+				safe_snprintf(dest,maxlen,"%s%s.%s%s",dir,fname,hostname,ext);
+				if(fexistcase(dest))	/* path/file.host.ini */
+					return(dest);
+			}
 		}
 	}
 #endif
 	
 	safe_snprintf(dest,maxlen,"%s%s%s",dir,fname,ext);
-	fexistcase(dest);
+	fexistcase(dest);	/* path/file.ini */
 	return(dest);
 }