diff --git a/MagickCore/animate.c b/MagickCore/animate.c
index 0874e40..65d9d97 100644
--- a/MagickCore/animate.c
+++ b/MagickCore/animate.c
@@ -1420,6 +1420,8 @@
       int
         status;
 
+      if (*working_directory == '\0')
+        (void) CopyMagickString(working_directory,".",MaxTextExtent);
       status=chdir(working_directory);
       if (status == -1)
         (void) ThrowMagickException(exception,GetMagickModule(),FileOpenError,
@@ -2847,6 +2849,8 @@
   */
   directory=getcwd(working_directory,MaxTextExtent);
   (void) directory;
+  if (*resource_info->home_directory == '\0')
+    (void) CopyMagickString(resource_info->home_directory,".",MaxTextExtent);
   status=chdir(resource_info->home_directory);
   if (status == -1)
     (void) ThrowMagickException(exception,GetMagickModule(),FileOpenError,
@@ -2918,6 +2922,8 @@
 
       GetPathComponent(image->filename,HeadPath,path);
       GetPathComponent(image->filename,TailPath,filename);
+      if (*path == '\0')
+        (void) CopyMagickString(path,".",MaxTextExtent);
       status=chdir(path);
       if (status == -1)
         (void) ThrowMagickException(exception,GetMagickModule(),FileOpenError,
diff --git a/MagickCore/display.c b/MagickCore/display.c
index b84510f..2d10c28 100644
--- a/MagickCore/display.c
+++ b/MagickCore/display.c
@@ -7201,6 +7201,9 @@
       /*
         Select image.
       */
+      if (*resource_info->home_directory == '\0')
+        (void) CopyMagickString(resource_info->home_directory,".",
+          MaxTextExtent);
       status=chdir(resource_info->home_directory);
       if (status == -1)
         (void) ThrowMagickException(exception,GetMagickModule(),FileOpenError,
@@ -12560,6 +12563,8 @@
       GetPathComponent(image->filename,TailPath,filename);
       if (*path != '\0')
         {
+          if (*path == '\0')
+            (void) CopyMagickString(path,".",MaxTextExtent);
           status=chdir(path);
           if (status == -1)
             (void) ThrowMagickException(exception,GetMagickModule(),
@@ -14532,6 +14537,8 @@
       int
         status;
 
+      if (*working_directory == '\0')
+        (void) CopyMagickString(working_directory,".",MaxTextExtent);
       status=chdir(working_directory);
       if (status == -1)
         (void) ThrowMagickException(exception,GetMagickModule(),FileOpenError,
@@ -16145,6 +16152,8 @@
     int
       status;
 
+    if (*resource_info->home_directory == '\0')
+      (void) CopyMagickString(resource_info->home_directory,".",MaxTextExtent);
     status=chdir(resource_info->home_directory);
     if (status == -1)
       (void) ThrowMagickException(exception,GetMagickModule(),FileOpenError,
diff --git a/MagickCore/utility.c b/MagickCore/utility.c
index 527d3a3..e58580c 100644
--- a/MagickCore/utility.c
+++ b/MagickCore/utility.c
@@ -699,9 +699,7 @@
 %  Expansion is ignored for coders "label:" "caption:" "pango:" and "vid:".
 %  Which provide their own '@' meta-character handling.
 %
-%  You can see the results of the expansion using "Configure" log
-%  events.
-%
+%  You can see the results of the expansion using "Configure" log events.
 %
 %  The returned list should be freed using  DestroyStringList().
 %
@@ -709,7 +707,6 @@
 %  freed  (TO BE CHECKED).  So a copy of the original pointer (and count)
 %  should be kept separate if they need to be freed later.
 %
-%
 %  The format of the ExpandFilenames function is:
 %
 %      status=ExpandFilenames(int *number_arguments,char ***arguments)
diff --git a/MagickCore/version.h b/MagickCore/version.h
index 54464c8..a8647dc 100644
--- a/MagickCore/version.h
+++ b/MagickCore/version.h
@@ -27,17 +27,17 @@
 */
 #define MagickPackageName "ImageMagick"
 #define MagickCopyright  "Copyright (C) 1999-2013 ImageMagick Studio LLC"
-#define MagickSVNRevision  "10470:10501M"
+#define MagickSVNRevision  "10505:10525M"
 #define MagickLibVersion  0x700
 #define MagickLibVersionText  "7.0.0"
 #define MagickLibVersionNumber  8,0,0
 #define MagickLibAddendum  "-0"
 #define MagickLibInterface  8
 #define MagickLibMinInterface  8
-#define MagickReleaseDate  "2013-01-04"
+#define MagickReleaseDate  "2013-01-06"
 #define MagickChangeDate   "20121005"
 #define MagickAuthoritativeURL  "http://www.imagemagick.org"
-#define MagickFeatures "HDRI OpenMP"
+#define MagickFeatures "DistributedPixelCache HDRI OpenMP"
 #define MagickDelegates "bzlib freetype jp2 jpeg lcms lzma ps tiff x xml zlib"
 #define MagickHomeURL  "file:///usr/local/share/doc/ImageMagick-7.0.0/index.html"
 #if (MAGICKCORE_QUANTUM_DEPTH == 8)
diff --git a/configure b/configure
index bdb9267..fd3fc74 100755
--- a/configure
+++ b/configure
@@ -3650,7 +3650,7 @@
 
 MAGICK_LIBRARY_VERSION_INFO=$MAGICK_LIBRARY_CURRENT:$MAGICK_LIBRARY_REVISION:$MAGICK_LIBRARY_AGE
 
-MAGICK_SVN_REVISION=10470:10501M
+MAGICK_SVN_REVISION=10505:10525M
 
 
 
@@ -24780,6 +24780,62 @@
 #
 # Find socket library
 #
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing gethostbyname" >&5
+$as_echo_n "checking for library containing gethostbyname... " >&6; }
+if ${ac_cv_search_gethostbyname+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char gethostbyname ();
+int
+main ()
+{
+return gethostbyname ();
+  ;
+  return 0;
+}
+_ACEOF
+for ac_lib in '' resolv nsl; do
+  if test -z "$ac_lib"; then
+    ac_res="none required"
+  else
+    ac_res=-l$ac_lib
+    LIBS="-l$ac_lib  $ac_func_search_save_LIBS"
+  fi
+  if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_search_gethostbyname=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext
+  if ${ac_cv_search_gethostbyname+:} false; then :
+  break
+fi
+done
+if ${ac_cv_search_gethostbyname+:} false; then :
+
+else
+  ac_cv_search_gethostbyname=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_gethostbyname" >&5
+$as_echo "$ac_cv_search_gethostbyname" >&6; }
+ac_res=$ac_cv_search_gethostbyname
+if test "$ac_res" != no; then :
+  test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+
+fi
+
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing socket" >&5
 $as_echo_n "checking for library containing socket... " >&6; }
 if ${ac_cv_search_socket+:} false; then :
@@ -24834,61 +24890,10 @@
 if test "$ac_res" != no; then :
   test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
 
-fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing gethostbyname" >&5
-$as_echo_n "checking for library containing gethostbyname... " >&6; }
-if ${ac_cv_search_gethostbyname+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_func_search_save_LIBS=$LIBS
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
+$as_echo "#define HAVE_SOCKET 1" >>confdefs.h
 
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char gethostbyname ();
-int
-main ()
-{
-return gethostbyname ();
-  ;
-  return 0;
-}
-_ACEOF
-for ac_lib in '' resolv nsl; do
-  if test -z "$ac_lib"; then
-    ac_res="none required"
-  else
-    ac_res=-l$ac_lib
-    LIBS="-l$ac_lib  $ac_func_search_save_LIBS"
-  fi
-  if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_search_gethostbyname=$ac_res
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext
-  if ${ac_cv_search_gethostbyname+:} false; then :
-  break
-fi
-done
-if ${ac_cv_search_gethostbyname+:} false; then :
-
-else
-  ac_cv_search_gethostbyname=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_gethostbyname" >&5
-$as_echo "$ac_cv_search_gethostbyname" >&6; }
-ac_res=$ac_cv_search_gethostbyname
-if test "$ac_res" != no; then :
-  test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+  MAGICK_FEATURES="DistributedPixelCache $MAGICK_FEATURES"
 
 fi
 
diff --git a/configure.ac b/configure.ac
index be707b9..16e91a0 100755
--- a/configure.ac
+++ b/configure.ac
@@ -1122,8 +1122,12 @@
 #
 # Find socket library
 #
-AC_SEARCH_LIBS(socket, socket)
 AC_SEARCH_LIBS(gethostbyname, resolv nsl)
+AC_SEARCH_LIBS(socket, socket,
+[
+  AC_DEFINE([HAVE_SOCKET],[1],[Define to 1 if you have socket support.])
+  MAGICK_FEATURES="DistributedPixelCache $MAGICK_FEATURES"
+])
 
 AC_CHECK_FUNCS([acosh _aligned_malloc asinh atanh atoll atexit cabs carg cimag creal clock ctime_r directio _exit execvp fchmod floor fork ftime ftruncate getc_unlocked getcwd getpid getexecname getdtablesize getpagesize getrlimit getrusage gettimeofday gmtime_r isnan j0 j1 lltostr localtime_r lstat memmove memset mkstemp munmap nanosleep newlocale _NSGetExecutablePath pclose _pclose poll popen _popen posix_fadvise posix_fallocate posix_madvise posix_memalign posix_spawnp pow pread pwrite qsort_r raise rand_r readlink readdir_r realpath select seekdir setlocale socket sqrt setvbuf stat strchr strrchr strcspn strdup strpbrk strspn strstr strtod strtod_l strtol strtoul symlink sysconf sigemptyset sigaction spawnvp strerror strlcat strlcpy strcasecmp strncasecmp telldir tempnam times ulltostr uselocale usleep utime vfprintf vfprintf_l vsprintf vsnprintf vsnprintf_l waitpid _wfopen _wstat])