Gentoo Archives: gentoo-commits

From: Lars Wendler <polynomial-c@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: eclass/
Date: Fri, 05 Jan 2018 13:13:50
Message-Id: 1515158020.1e09cba657ccb2b8e6fbcbeb28c5c593da2127eb.polynomial-c@gentoo
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}"