better check result of mkdirs
diff --git a/src/main/java/org/apache/commons/compress/archivers/examples/Expander.java b/src/main/java/org/apache/commons/compress/archivers/examples/Expander.java
index c4d036c..f6bee61 100644
--- a/src/main/java/org/apache/commons/compress/archivers/examples/Expander.java
+++ b/src/main/java/org/apache/commons/compress/archivers/examples/Expander.java
@@ -246,9 +246,14 @@
                     + " would craete file outside of " + targetDirectory);
             }
             if (nextEntry.isDirectory()) {
-                f.mkdirs();
+                if (!f.isDirectory() && !f.mkdirs()) {
+                    throw new IOException("failed to create directory " + f);
+                }
             } else {
-                f.getParentFile().mkdirs();
+                File parent = f.getParentFile();
+                if (!parent.isDirectory() && !parent.mkdirs()) {
+                    throw new IOException("failed to create directory " + parent);
+                }
                 try (OutputStream o = Files.newOutputStream(f.toPath())) {
                     writer.writeEntryDataTo(nextEntry, o);
                 }
diff --git a/src/site/xdoc/examples.xml b/src/site/xdoc/examples.xml
index ec6ced7..11e6009 100644
--- a/src/site/xdoc/examples.xml
+++ b/src/site/xdoc/examples.xml
@@ -164,9 +164,14 @@
         String name = fileName(targetDir, entry);
         File f = new File(name);
         if (entry.isDirectory()) {
-            f.mkdirs();
+            if (!f.isDirectory() && !f.mkdirs()) {
+                throw new IOException("failed to create directory " + f);
+            }
         } else {
-            f.getParentFile().mkdirs();
+            File parent = f.getParentFile();
+            if (!parent.isDirectory() && !parent.mkdirs()) {
+                throw new IOException("failed to create directory " + parent);
+            }
             try (OutputStream o = Files.newOutputStream(f.toPath())) {
                 IOUtils.copy(i, o);
             }