=== modified file 'debian/changelog'
--- debian/changelog	2015-04-15 17:53:39 +0000
+++ debian/changelog	2015-11-03 07:09:56 +0000
@@ -1,3 +1,9 @@
+partman-efi (62ubuntu2.1) wily-proposed; urgency=medium
+
+  * Follow partman-auto/disk to reuse the ESP. (LP: #1512589) 
+
+ -- Shih-Yuan Lee (FourDollars) <sylee@canonical.com>  Tue, 03 Nov 2015 14:51:37 +0800
+
 partman-efi (62ubuntu2) vivid; urgency=medium
 
   * Honor preseeding of partman-efi/non_efi_system (and/or don't ask for it

=== modified file 'fstab.d/efi'
--- fstab.d/efi	2015-02-02 19:01:37 +0000
+++ fstab.d/efi	2015-11-03 07:09:56 +0000
@@ -12,19 +12,48 @@
 	;;
 esac
 
-seen_efi=
+paths=
 for dev in $DEVICES/*; do
 	[ -d $dev ] || continue
 	cd $dev
 	open_dialog PARTITIONS
 	while { read_line num id size type fs path name; [ "$id" ]; }; do
-		[ -z "$seen_efi" ] || continue
 		[ $fs != free ] || continue
 		[ -f "$id/method" ] || continue
 		method=$(cat $id/method)
 		[ "$method" = efi ] || continue
-		echo "$path" /boot/efi vfat umask=0077 0 1
-		seen_efi=1
+		if [ -z "$paths" ]; then
+			paths="$path"
+		else
+			paths="$paths $path"
+		fi
 	done
 	close_dialog
 done
+
+if [ -z "$paths" ]; then
+	exit 0
+fi
+
+# Use any autopartition disk that has been set
+if db_get partman-auto/disk && [ "$RET" ]; then
+	disks="$RET"
+	seen_efi=
+	for disk in $disks; do
+		for path in $paths; do
+			case "$path" in
+				$disk*)
+					echo "$path" /boot/efi vfat umask=0077 0 1
+					seen_efi=1
+					break
+					;;
+			esac
+		done
+		[ -z "$seen_efi" ] || break
+	done
+else
+	for path in $paths; do
+		echo "$path" /boot/efi vfat umask=0077 0 1
+		break
+	done
+fi

