Fix scrolling bug in clang-format's emacs integration.

This patch ensure that nothing scrolls even if the same buffer is opened
in multiple windows.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@180252 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/tools/clang-format/clang-format.el b/tools/clang-format/clang-format.el
index d58e403..70504c9 100644
--- a/tools/clang-format/clang-format.el
+++ b/tools/clang-format/clang-format.el
@@ -10,10 +10,12 @@
 ;; 'style' and 'binary' below.
 (defun clang-format-region ()
   (interactive)
-  (let ((orig-window-start (window-start))
-        (orig-point (point))
-        (binary "clang-format")
-        (style "LLVM"))
+
+  (let* ((orig-windows (get-buffer-window-list (current-buffer)))
+         (orig-window-starts (mapcar #'window-start orig-windows))
+         (orig-point (point))
+         (binary "clang-format")
+         (style "LLVM"))
     (if mark-active
         (setq beg (region-beginning)
               end (region-end))
@@ -24,4 +26,6 @@
                          "-length" (number-to-string (- end beg))
                          "-style" style)
     (goto-char orig-point)
-    (set-window-start (selected-window) orig-window-start)))
+    (dotimes (index (length orig-windows))
+      (set-window-start (nth index orig-windows)
+                        (nth index orig-window-starts)))))