Thread: AW: Re[2]: [cedet-semantic] Some semantic bugfixes
Brought to you by:
zappo
From: <kla...@sd...> - 2005-01-28 10:54:03
|
Hi, > If an overlay is not live (dead?) should we convert it in-place > to a vector when the problem is discovered? Perhaps the start/end > no longer exists though. I dunno. > If ECB is making clones of tags, the :filename feature should be > enabled on it, so ECB should be able to find and reload the file > into a buffer if needed. What do you mean with "...is making clones"? ECB just uses the tag-table got from semantic - no explicit calls to make clones or = something elso.... should ECB use clones?? Ciao, Klaus Thanks Eric >>> David PONCE <dav...@wa...> seems to think that: [ ... ] > >That's a good find! However your patch is not portable to Emacs. I >think a better way to solve that is to make `semantic-overlay-live-p' >have the same behavior in both XEmacs and Emacs, and use it in >`semantic-tag-buffer'. > >Following is a patch to do that. It would be nice if you could test >it. > >Your other points and patches look good to me. > >Eric, WDYT? > >Thanks for your help! >David >=20 > >2005-01-26 David Ponce <da...@dp...> > > * cedet/semantic/semantic-fw.el > > (semantic-overlay-live-p) [XEmacs]: Align with Emacs' > `overlay-buffer' behavior. > > * cedet/semantic/semantic-tag.el > > (semantic-tag-buffer): Ensure the tag's overlay is living. [ ... ] --=20 Eric Ludlam: za...@gn..., = er...@si... Home: http://www.ludlam.net Siege: www.siege-engine.com Emacs: http://cedet.sourceforge.net GNU: www.gnu.org ------------------------------------------------------- This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting Tool for open source databases. Create drag-&-drop reports. Save time by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. Download a FREE copy at http://www.intelliview.com/go/osdn_nl _______________________________________________ cedet-semantic mailing list ced...@li... https://lists.sourceforge.net/lists/listinfo/cedet-semantic |
From: Eric M. L. <er...@si...> - 2005-01-28 12:01:08
|
Some semantic features, like `semantic-adopt-external-members' find tags and clone them before linking them together. The clone should then be immune to the originating buffer being killed. If `semantic-tag-buffer' is used, it should (and now does with Dave's patch) return nil if that overlay is killed. Perhaps we should check if the overlay is live before returning it too? Anyway, if you use `semantic-tag-file-name' when the buffer is nil, there is a chance you can find that tag in that file by: 1) Loading that filename 2) Searching for a tag of that name, or at that start/end position. I just investigated, and the class-browser feature does not make clones. I know it has a bug where the browser can go out-of-date with changes in a buffer. I may need to audit that code to see if clones are needed since it was written before tag cloning was written. Eric >>> <kla...@sd...> seems to think that: >Hi, > >> If an overlay is not live (dead?) should we convert it in-place >> to a vector when the problem is discovered? Perhaps the start/end >> no longer exists though. I dunno. > >> If ECB is making clones of tags, the :filename feature should be >> enabled on it, so ECB should be able to find and reload the file >> into a buffer if needed. > >What do you mean with "...is making clones"? ECB just uses the >tag-table got from semantic - no explicit calls to make clones or = >something >elso.... should ECB use clones?? > >Ciao, >Klaus > >Thanks >Eric > >>>> David PONCE <dav...@wa...> seems to think that: > [ ... ] >> >>That's a good find! However your patch is not portable to Emacs. I >>think a better way to solve that is to make `semantic-overlay-live-p' >>have the same behavior in both XEmacs and Emacs, and use it in >>`semantic-tag-buffer'. >> >>Following is a patch to do that. It would be nice if you could test >>it. >> >>Your other points and patches look good to me. >> >>Eric, WDYT? >> >>Thanks for your help! >>David >>=20 >> >>2005-01-26 David Ponce <da...@dp...> >> >> * cedet/semantic/semantic-fw.el >> >> (semantic-overlay-live-p) [XEmacs]: Align with Emacs' >> `overlay-buffer' behavior. >> >> * cedet/semantic/semantic-tag.el >> >> (semantic-tag-buffer): Ensure the tag's overlay is living. > [ ... ] > >--=20 > Eric Ludlam: za...@gn..., = >er...@si... > Home: http://www.ludlam.net Siege: www.siege-engine.com >Emacs: http://cedet.sourceforge.net GNU: www.gnu.org > > >------------------------------------------------------- >This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting >Tool for open source databases. Create drag-&-drop reports. Save time >by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. >Download a FREE copy at http://www.intelliview.com/go/osdn_nl >_______________________________________________ >cedet-semantic mailing list >ced...@li... >https://lists.sourceforge.net/lists/listinfo/cedet-semantic > > |