      FcConfigDestroy (config);
  bail0:
 diff --git a/src/fcxml.c b/src/fcxml.c
-index 8ff10b6..24c13f1 100644
+index c68b0cf..c0d978b 100644
 --- a/src/fcxml.c
 +++ b/src/fcxml.c
-@@ -3196,8 +3196,6 @@ bail0:
+@@ -3261,8 +3261,6 @@ bail0:
      {
  	if (name)
  	    FcConfigMessage (0, FcSevereError, "Cannot load config file \"%s\"", name);

     }
     return FcTrue;
-- 
1.8.3.4


 
 	/*
 	 * Edit pattern with user-defined rules
@@ -196,8 +189,8 @@ FcDirScanConfig (FcFontSet	*set,
     base = file + strlen ((char *) file);
 
     if (FcDebug () & FC_DBG_SCAN)
-	printf ("\tScanning dir %s\n", dir);
-	
+	fprintf (stderr, "[fontconfig] Scanning dir %s\n", dir);
+
     d = opendir ((char *) dir);
     if (!d)
     {
@@ -233,8 +226,24 @@ FcDirScanConfig (FcFontSet	*set,
     /*
      * Scan file files to build font patterns
      */
+    char buf1[512], buf2[512], pad[512], *str = &buf1[0], *prev = &buf2[0], *tmp;
+    int j, diff;
+    prev[0] = pad[0] = 0;
+
     for (i = 0; i < files->num; i++)
     {
+	snprintf (str, 512, "\r[%d/%d] %s", i+1, files->num, files->strs[i]);
+
+	for (diff = strlen (prev) - strlen (str), j = 0; diff > 0; diff--, j++)
+	    pad[j] = ' ';
+
+	pad[j] = 0;
+
+	if (FcDebug () & FC_DBG_SCAN)
+	    fprintf (stderr, "%s%s", str, pad);
+
+	tmp = str; str = prev; prev = tmp;
+
 	if (scanOnly)
 	{
 	    if (FcFileIsDir (files->strs[i]))
@@ -246,6 +255,9 @@ FcDirScanConfig (FcFontSet	*set,
 	}
     }
 
+    if (FcDebug () & FC_DBG_SCAN)
+	fprintf (stderr, "\n[fontconfig] Finished scanning dir %s\n", dir);
+
 bail2:
     FcStrSetDestroy (files);
 bail1:
diff --git a/src/fcinit.c b/src/fcinit.c
index b8d5d06..1a25b97 100644
--- a/src/fcinit.c
