1 |
commit: 1e09cba657ccb2b8e6fbcbeb28c5c593da2127eb |
2 |
Author: Gary Macindoe <gary <AT> garymacindoe <DOT> co <DOT> uk> |
3 |
AuthorDate: Thu Sep 28 21:32:34 2017 +0000 |
4 |
Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org> |
5 |
CommitDate: Fri Jan 5 13:13:40 2018 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1e09cba6 |
7 |
|
8 |
Fix handling of multiple CDs |
9 |
|
10 |
Closes: https://github.com/gentoo/gentoo/pull/5818 |
11 |
|
12 |
eclass/cdrom.eclass | 12 +++++++++--- |
13 |
1 file changed, 9 insertions(+), 3 deletions(-) |
14 |
|
15 |
diff --git a/eclass/cdrom.eclass b/eclass/cdrom.eclass |
16 |
index 47e2c6342e0..7b0eb9c6c3b 100644 |
17 |
--- a/eclass/cdrom.eclass |
18 |
+++ b/eclass/cdrom.eclass |
19 |
@@ -71,7 +71,12 @@ fi |
20 |
# eclass, see that function's description. |
21 |
cdrom_get_cds() { |
22 |
unset CDROM_SET |
23 |
- export CDROM_CURRENT_CD=0 CDROM_CHECKS=( "${@}" ) |
24 |
+ export CDROM_CURRENT_CD=0 |
25 |
+ export CDROM_NUM_CDS="${#}" |
26 |
+ local i |
27 |
+ for i in $(seq ${#}); do |
28 |
+ export CDROM_CHECK_${i}="${!i}" |
29 |
+ done |
30 |
|
31 |
# If the user has set CD_ROOT or CD_ROOT_1, don't bother informing |
32 |
# them about which discs are needed as they presumably already know. |
33 |
@@ -190,7 +195,8 @@ cdrom_load_next_cd() { |
34 |
local i cdset |
35 |
: CD_ROOT_${CDROM_CURRENT_CD} |
36 |
export CDROM_ROOT=${CD_ROOT:-${!_}} |
37 |
- IFS=: read -r -a cdset -d "" <<< "${CDROM_CHECKS[$((${CDROM_CURRENT_CD} - 1))]}" |
38 |
+ local var="CDROM_CHECK_${CDROM_CURRENT_CD}" |
39 |
+ IFS=: read -r -a cdset -d "" <<< "${!var}" |
40 |
|
41 |
for i in $(seq ${CDROM_SET:-0} ${CDROM_SET:-$((${#cdset[@]} - 1))}); do |
42 |
local f=${cdset[${i}]} point= node= fs= opts= |
43 |
@@ -222,7 +228,7 @@ cdrom_load_next_cd() { |
44 |
fi |
45 |
|
46 |
if [[ ${showedmsg} -eq 0 ]] ; then |
47 |
- if [[ ${#CDROM_CHECKS[@]} -eq 1 ]] ; then |
48 |
+ if [[ ${CDROM_NUM_CDS} -eq 1 ]] ; then |
49 |
einfo "Please insert+mount the ${CDROM_NAME:-CD for ${PN}} now !" |
50 |
else |
51 |
local var="CDROM_NAME_${CDROM_CURRENT_CD}" |