Using `dvc-revlist-diff' on a revision, in a `*tla-log*' buffer I get
an error.

Attached therewith is the backtrace of the error and an attempt to fix
the problem.

I hope the patch is correct.

Regards,
Andrea Russo.

Please change the Subject header to a concise description of your patch.
Please describe your patch between the LOG-START and LOG-END markers:
<<LOG-START>>

* tla-core.el (tla-revision-id-to-list): Pass the inner revision data
  to `tla-revision-direct-ancestor' when `rev-id' is of type
  `previous-revision'.

<<LOG-END>>



[VERSION] dvc-dev-bzr

Bazaar (bzr) 0.10.0

Emacs  : GNU Emacs 22.0.50.8 (i686-pc-linux-gnu, GTK+ Version 2.8.20)
 of 2006-10-13 on onosendai.org
-- 
Reclama i tuoi diritti digitali, elimina il DRM.  Approfondisci su
http://www.no1984.org
Reclaim your digital rights, eliminate DRM.  Learn more at
http://www.defectivebydesign.org/what_is_drm
=== modified file 'lisp/tla-core.el'
--- lisp/tla-core.el	2006-10-03 19:35:48 +0000
+++ lisp/tla-core.el	2006-10-14 16:16:44 +0000
@@ -317,7 +317,8 @@
          (type (dvc-revision-get-type rev-id)))
     (case type
       (revision (car data))
-      (previous-revision (tla-revision-direct-ancestor (car data) (nth 1 data)))
+      (previous-revision (tla-revision-direct-ancestor 
+			  (car (dvc-revision-get-data (car data))) (nth 1 data)))
       (otherwise (error "TODO: type of revision not implemented: %S" type)))))
 
 ;;

Debugger entered--Lisp error: (wrong-type-argument stringp ("[EMAIL PROTECTED]" 
"notemat" "andy" "26.2" "patch-181"))
  string=(("[EMAIL PROTECTED]" "notemat" "andy" "26.2" "patch-181") "")
  (if (string= (cadr comp) "") (concat (car comp) "--" (mapconcat ... ... 
"--")) (mapconcat (quote identity) (remove nil comp) "--"))
  tla--name-construct-semi-qualified((revision ("[EMAIL PROTECTED]" "notemat" 
"andy" "26.2" "patch-181")) nil nil nil)
  (let ((semi ...)) (concat (and archive ... ...) semi))
  tla--name-construct((tla (revision ("[EMAIL PROTECTED]" "notemat" "andy" 
"26.2" "patch-181"))))
  (and revision (tla--name-construct revision))
  (list "ancestry-graph" "--immediate" (and revision (tla--name-construct 
revision)))
  (tla--run-tla-sync (list "ancestry-graph" "--immediate" (and revision ...)) 
:finished (lambda (output error status arguments) (tla--name-split ...)))
  (let ((ancestor ...)) (when (interactive-p) (message "Ancestor of: %s\n       
  is: %s" ... ...)) (if (or ... ...) ancestor (tla-revision-direct-ancestor 
ancestor ...)))
  tla-revision-direct-ancestor((tla (revision ("[EMAIL PROTECTED]" "notemat" 
"andy" "26.2" "patch-181"))) 1)
  (cond ((eql type ...) (car data)) ((eql type ...) 
(tla-revision-direct-ancestor ... ...)) (t (error "TODO: type of revision not 
implemented: %S" type)))
  (case type (revision (car data)) (previous-revision 
(tla-revision-direct-ancestor ... ...)) (otherwise (error "TODO: type of 
revision not implemented: %S" type)))
  (let* ((data ...) (type ...)) (case type (revision ...) (previous-revision 
...) (otherwise ...)))
  tla-revision-id-to-list((tla (previous-revision (tla ...) 1)))
  (tla--name-construct (tla-revision-id-to-list base))
  (tla-delta (tla--name-construct (tla-revision-id-to-list base)) 
(tla--name-construct (tla-revision-id-to-list modified)) nil dont-switch)
  (if (and (eq ... ...) (eq ... ...) (equal ... ...)) (tla-get-changeset (car 
...) t) (tla-delta (tla--name-construct ...) (tla--name-construct ...) nil 
dont-switch))
  tla-dvc-delta((tla (previous-revision (tla ...) 1)) (tla (revision ("[EMAIL 
PROTECTED]" "notemat" "andy" "26.2" "patch-181"))) nil)
  apply(tla-dvc-delta ((tla (previous-revision ... 1)) (tla (revision ...)) 
nil))
  dvc-apply("dvc-delta" (tla (previous-revision (tla ...) 1)) (tla (revision 
("[EMAIL PROTECTED]" "notemat" "andy" "26.2" "patch-181"))) nil)
  dvc-delta((tla (previous-revision (tla ...) 1)) (tla (revision ("[EMAIL 
PROTECTED]" "notemat" "andy" "26.2" "patch-181"))))
  (let* ((prev-rev-id ...)) (dvc-trace "prev-rev-id=%S" prev-rev-id) (dvc-trace 
"rev-id=%S" rev-id) (dvc-delta prev-rev-id rev-id))
  (let* ((rev-id ...) (rev-type ...) (rev-data ...)) (unless (eq rev-type ...) 
(error "Only 'revision type is supported here. Got %S" rev-type)) (let* (...) 
(dvc-trace "prev-rev-id=%S" prev-rev-id) (dvc-trace "rev-id=%S" rev-id) 
(dvc-delta prev-rev-id rev-id)))
  (let ((--cl-store-- ...)) (progn (or ... ...) (aset --cl-x-- 7 --cl-store--)))
  (let* ((--cl-x-- ...)) (let (...) (progn ... ...)))
  (setf (dvc-revlist-entry-patch-diff-buffer (nth 1 elem)) (let* (... ... ...) 
(unless ... ...) (let* ... ... ... ...)))
  (if (and buffer (buffer-live-p buffer)) (dvc-buffer-show-or-scroll buffer 
scroll-down) (setf (dvc-revlist-entry-patch-diff-buffer ...) (let* ... ... 
...)))
  (let ((buffer ...) (log-buf ...)) (if (and buffer ...) 
(dvc-buffer-show-or-scroll buffer scroll-down) (setf ... ...)) (pop-to-buffer 
log-buf))
  (let ((elem ...)) (unless (eq ... ...) (error "Cursor is not on a 
revision.")) (let (... ...) (if ... ... ...) (pop-to-buffer log-buf)))
  dvc-revlist-diff()
  call-interactively(dvc-revlist-diff)
_______________________________________________
Dvc-dev mailing list
[email protected]
https://mail.gna.org/listinfo/dvc-dev

Reply via email to