You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
1.2 KiB
49 lines
1.2 KiB
6 years ago
|
From 4d9522764985462741c7bb4af1ab231b9251476b Mon Sep 17 00:00:00 2001
|
||
|
From: Mike Frysinger <vapier@chromium.org>
|
||
|
Date: Wed, 10 Jan 2018 00:41:43 -0500
|
||
|
Subject: [PATCH] dtdiff: change to POSIX shell
|
||
|
|
||
|
This changes from the bash-specific process substitution feature to
|
||
|
reading with pipes. It relies on /dev/fd or /proc/self/fd existing.
|
||
|
|
||
|
URL: https://crbug.com/756559
|
||
|
Signed-off-by: Mike Frysinger <vapier@chromium.org>
|
||
|
---
|
||
|
dtdiff | 19 +++++++++++++------
|
||
|
1 file changed, 13 insertions(+), 6 deletions(-)
|
||
|
|
||
|
diff --git a/dtdiff b/dtdiff
|
||
|
index 5fa772b0ab62..4d1b71756c2f 100644
|
||
|
--- a/dtdiff
|
||
|
+++ b/dtdiff
|
||
|
@@ -1,8 +1,4 @@
|
||
|
-#! /bin/bash
|
||
|
-
|
||
|
-# This script uses the bash <(...) extension.
|
||
|
-# If you want to change this to work with a generic /bin/sh, make sure
|
||
|
-# you fix that.
|
||
|
+#! /bin/sh
|
||
|
|
||
|
|
||
|
DTC=dtc
|
||
|
@@ -35,4 +31,15 @@ if [ $# != 2 ]; then
|
||
|
exit 1
|
||
|
fi
|
||
|
|
||
|
-diff -u <(source_and_sort "$1") <(source_and_sort "$2")
|
||
|
+for dir in /dev/fd /proc/self/fd; do
|
||
|
+ if [ -d "${dir}" ]; then
|
||
|
+ break
|
||
|
+ fi
|
||
|
+done
|
||
|
+
|
||
|
+source_and_sort "$1" | (
|
||
|
+ # Duplicate current stdin from the first file to fd 3 so we can change fd 0
|
||
|
+ # to the second file.
|
||
|
+ exec 3<&0
|
||
|
+ source_and_sort "$2" | diff -u "${dir}/3" "${dir}/0"
|
||
|
+)
|
||
|
--
|
||
|
2.15.1
|
||
|
|