39fcc65
diff -ruN cpio-2.9.90.orig/src/copyin.c cpio-2.9.90/src/copyin.c
39fcc65
--- cpio-2.9.90.orig/src/copyin.c	2008-07-11 13:20:27.000000000 +0200
39fcc65
+++ cpio-2.9.90/src/copyin.c	2008-07-18 10:16:24.000000000 +0200
39fcc65
@@ -1269,15 +1269,15 @@
39fcc65
       swab_array ((char *) short_hdr, 13);
39fcc65
     }
39fcc65
 
39fcc65
-  file_hdr->c_dev_maj = major (short_hdr->c_dev);
39fcc65
-  file_hdr->c_dev_min = minor (short_hdr->c_dev);
39fcc65
+  file_hdr->c_dev_maj = major ((unsigned short)short_hdr->c_dev);
39fcc65
+  file_hdr->c_dev_min = minor ((unsigned short)short_hdr->c_dev);
39fcc65
   file_hdr->c_ino = short_hdr->c_ino;
39fcc65
   file_hdr->c_mode = short_hdr->c_mode;
39fcc65
   file_hdr->c_uid = short_hdr->c_uid;
39fcc65
   file_hdr->c_gid = short_hdr->c_gid;
39fcc65
   file_hdr->c_nlink = short_hdr->c_nlink;
39fcc65
-  file_hdr->c_rdev_maj = major (short_hdr->c_rdev);
39fcc65
-  file_hdr->c_rdev_min = minor (short_hdr->c_rdev);
39fcc65
+  file_hdr->c_rdev_maj = major ((unsigned short)short_hdr->c_rdev);
39fcc65
+  file_hdr->c_rdev_min = minor ((unsigned short)short_hdr->c_rdev);
39fcc65
   file_hdr->c_mtime = (unsigned long) short_hdr->c_mtimes[0] << 16
39fcc65
                       | short_hdr->c_mtimes[1];
39fcc65