Signed-off-by: Stefan Beller <sbel...@google.com>
---

Notes:
    The output of the differential testing is below,
    which points out 2 bugs:
    * resolving relative paths seems is broken, so we
      would need to have the equivalent of
        eval "set $(git rev-parse --sq --prefix "$wt_prefix" -- "$@")"
      (091a6eb0, 2013-06-16,  submodule: drop the top-level requirement)
    * The handling of funny characters is broken.
    
    ----------------------------------------------
    ../init
    160000 9ab41d0d44279924747e3eafa6da77966579aa45 0   init
    ----
    ----
    ----
    fatal: ../init: '../init' is outside repository
    ----------------------------------------------
    ../init
    160000 37b832c3ae4dcc0830b173572ff59be6b089bdcd 0   init
    ----
    ----
    ----
    fatal: ../init: '../init' is outside repository
    ----------------------------------------------
    ../init
    160000 9ab41d0d44279924747e3eafa6da77966579aa45 0   init
    ----
    ----
    ----
    fatal: ../init: '../init' is outside repository
    ----------------------------------------------
    
    160000 37b832c3ae4dcc0830b173572ff59be6b089bdcd 0   example2
    160000 9ab41d0d44279924747e3eafa6da77966579aa45 0   init
    160000 01b25b1d44b1049978e053768790100df8b8d9d9 0   å äö
    ----
    160000 37b832c3ae4dcc0830b173572ff59be6b089bdcd 0   example2
    160000 9ab41d0d44279924747e3eafa6da77966579aa45 0   init
    160000 01b25b1d44b1049978e053768790100df8b8d9d9 0   "\303\245 
\303\244\303\266"
    ----
    ----

 git-submodule.sh | 25 ++++++++++++++++++++++++-
 1 file changed, 24 insertions(+), 1 deletion(-)

diff --git a/git-submodule.sh b/git-submodule.sh
index 36797c3..717b74d 100755
--- a/git-submodule.sh
+++ b/git-submodule.sh
@@ -149,7 +149,7 @@ relative_path ()
 # Get submodule info for registered submodules
 # $@ = path to limit submodule list
 #
-module_list()
+module_list_shell()
 {
        eval "set $(git rev-parse --sq --prefix "$wt_prefix" -- "$@")"
        (
@@ -187,6 +187,29 @@ module_list()
        '
 }
 
+module_list()
+{
+       # call both the old and new code
+       module_list_shell $@ >/u/git_submodule_module_list_shell 
2>/u/git_submodule_module_list_shell2
+       git submodule--helper --module_list $@ >/u/git_submodule_module_list 
2>/u/git_submodule_module_list2
+       # if there is a diff record it
+       DIFF=$(diff /u/git_submodule_module_list_shell 
/u/git_submodule_module_list)
+       if [ "$DIFF" != "" ]
+       then
+               echo 
"----------------------------------------------">>/u/git_submodule_module_diffs
+               echo $@ >>/u/git_submodule_module_diffs
+               cat /u/git_submodule_module_list_shell 
>>/u/git_submodule_module_diffs
+               echo "----" >>/u/git_submodule_module_diffs
+               cat /u/git_submodule_module_list >>/u/git_submodule_module_diffs
+               echo "----" >>/u/git_submodule_module_diffs
+               cat /u/git_submodule_module_list_shell2 
>>/u/git_submodule_module_diffs
+               echo "----" >>/u/git_submodule_module_diffs
+               cat /u/git_submodule_module_list2 
>>/u/git_submodule_module_diffs
+       fi
+       # output to the caller
+       cat /u/git_submodule_module_list
+}
+
 die_if_unmatched ()
 {
        if test "$1" = "#unmatched"
-- 
2.5.0.5.gf4cd9ae.dirty

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to