+2004-03-10  Katsumi Yamaoka  <yamaoka@jpl.org>
+
+       * mm-decode.el (mm-complicated-handles): New function reviving
+       former definition of mm-multiple-handles.
+
+       * gnus-art.el (gnus-mime-save-part-and-strip): Use it.
+       (gnus-mime-delete-part): Use it.
+
 2004-03-09  Kevin Greiner <kgreiner@xpediantsolutions.com>
 
        * gnus-agent.el (gnus-agent-read-local): Bind
 
   (gnus-article-check-buffer)
   (when (gnus-group-read-only-p)
     (error "The current group does not support deleting of parts"))
+  (when (mm-complicated-handles gnus-article-mime-handles)
+    (error "\
+The current article has a complicated MIME structure, giving up..."))
   (when (gnus-yes-or-no-p "\
 Deleting parts may malfunction or destroy the article; continue? ")
     (let* ((data (get-text-property (point) 'gnus-data))
   (gnus-article-check-buffer)
   (when (gnus-group-read-only-p)
     (error "The current group does not support deleting of parts"))
+  (when (mm-complicated-handles gnus-article-mime-handles)
+    (error "\
+The current article has a complicated MIME structure, giving up..."))
   (when (gnus-yes-or-no-p "\
 Deleting parts may malfunction or destroy the article; continue? ")
     (let* ((data (get-text-property (point) 'gnus-data))
 
        (or (listp (car handles))
           (stringp (car handles)))))
 
+(defun mm-complicated-handles (handles)
+  (and (listp (car handles))
+       (> (length handles) 1)))
+
 (defun mm-merge-handles (handles1 handles2)
   (append
    (if (listp (car handles1))