repo-add: Fix whitespaces handling in variables.

repo-add didn't handle whitespaces nicely in fields value, and this has hurt
us several times, first with provision version (FS#9171) and then with
optdepends (FS#10630), so it is time to fix it.

Signed-off-by: Nagy Gabor <ngaba@bibl.u-szeged.hu>
Signed-off-by: Xavier Chantry <shiningxc@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
This commit is contained in:
Nagy Gabor 2008-01-15 11:50:46 +01:00 committed by Dan McGee
parent 729651a554
commit 6417ac129d
1 changed files with 8 additions and 9 deletions

View File

@ -99,8 +99,7 @@ test_repo_db_file () {
write_list_entry() {
if [ -n "$2" ]; then
echo "%$1%" >>$3
echo $2 | tr -s ' ' '\n' >>$3
echo "" >>$3
echo -e $2 >>$3
fi
}
@ -157,13 +156,13 @@ db_write_entry()
grep -v "^#" | sed 's|\(\w*\)\s*=\s*\(.*\)|\1="\2"|'); do
eval "$line"
case "$line" in
group=*) _groups="$_groups $group" ;;
depend=*) _depends="$_depends $depend" ;;
backup=*) _backups="$_backups $backup" ;;
license=*) _licenses="$_licenses $license" ;;
replaces=*) _replaces="$_replaces $replaces" ;;
provides=*) _provides="$_provides $provides" ;;
conflict=*) _conflicts="$_conflicts $conflict" ;;
group=*) _groups="$_groups$group\n" ;;
depend=*) _depends="$_depends$depend\n" ;;
backup=*) _backups="$_backups$backup\n" ;;
license=*) _licenses="$_licenses$license\n" ;;
replaces=*) _replaces="$_replaces$replaces\n" ;;
provides=*) _provides="$_provides$provides\n" ;;
conflict=*) _conflicts="$_conflicts$conflict\n" ;;
esac
done