Loading ...
Sorry, an error occurred while loading the content.

Re: Problem with menu item

Expand Messages
  • Antoine J. Mechelynck
    ... Oops! 2nd byte is FA, not F0. Tony
    Message 1 of 15 , Dec 31, 2002
    • 0 Attachment
      Antoine J. Mechelynck <antoine.mechelynck@...> wrote:
      > Klaus Bosau <kbosau@...> wrote:
      > > On Mon, 30 Dec 2002, Benji Fisher wrote:
      > [...]
      > > > 139, 250, 88, 128, 255, 88, 139, (12, 28, 138), 128
      > [...]
      >
      > 8B F0 58 80 FF 58 8B [0A|1A|8A] 80
      >
      > could that be a nippet of runaway program code? Looks to me like program
      > being treated as data.
      >
      > Tony.

      Oops! 2nd byte is FA, not F0.

      Tony
    • Benji Fisher
      ... Nothing springs to mind. ... I suppose that is possible, but I still suspect some sort of conflict between the scripts. I would look closely at the parts
      Message 2 of 15 , Dec 31, 2002
      • 0 Attachment
        Klaus Bosau wrote:
        > On Mon, 30 Dec 2002, Benji Fisher wrote:
        >
        > Thanks a lot! ":digraphs" has helped. I know the character codes now
        > though, but I'm not quite sure if this could be helpful in any way at
        > all. In decimal notation they read
        >
        > | 139, 250, 88, 128, 255, 88, 139, (12, 28, 138), 128
        >
        > (One of the characters sometimes changes I noticed...) Do you have any
        > idea how this could be used to find out what happend?

        Nothing springs to mind.

        > I did some "investigative work" in the meantime. And it took me about an
        > hour to get a slight impression of what happened but I'm afraid I'm not
        > Vim'er enough to be able to make use of it - maybe you could put me a
        > bit in the right direction. My first idea was that some of the settings
        > made in the script referred to might interfere with settings made by
        > another script source'd at the same time. So I shrank its content
        > successively starting with those parts active when being source'd. After
        > I shrank its volume for about 70% (turned active parts into comments)
        > the problem suddenly disappeared. (I should say that the script referred
        > to normally works fine and it in fact has not been changed in the last
        > few weeks.) The strange part of what I found out however is that prior
        > to reaching this point there weren't any active parts left at all, just
        > declarations (function bodys only, no global variables, no mappings
        > nothing that could interfere in any way...).
        >
        > Afterwards I found out that the same effect could be obtained by
        > leaving this script untouched in its original state (functioning) and
        > removing one of the other scripts instead residing too in the plugin
        > directory. Now I'm wondering a bit if there might be something like an
        > upper limit on the amount of source'd material. What do you think?

        I suppose that is possible, but I still suspect some sort of
        conflict between the scripts. I would look closely at the parts of the
        two scripts that, when deleted, lead to a working system. Do things
        start working as soon as you delete ANY plugin (such as the standard
        ones, in $VIMRUNTIME/plugin/ )?

        HTH --Benji Fisher
      • Klaus Bosau
        ... Hi Antoine, the sequence in question showed up where (normal mode) keystrokes normally are shown. Are there any commands which could have caused this?
        Message 3 of 15 , Jan 1, 2003
        • 0 Attachment
          On Tue, 31 Dec 2002, Antoine J. Mechelynck wrote:

          > Oops! 2nd byte is FA, not F0.

          Hi Antoine,

          the sequence in question showed up where (normal mode) keystrokes
          normally are shown. Are there any commands which could have caused this?
          "128" for instance... It denotes the symbol for the european monetary
          unit. Isn't it unlikely that a normal mode command contains this
          character?

          Thanks,

          Klaus
        • Klaus Bosau
          ... Yes. I have to ensure however that the size of the moved material is about equal to the size of the initially moved plugin. - How large is the amount of
          Message 4 of 15 , Jan 1, 2003
          • 0 Attachment
            On Tue, 31 Dec 2002, Benji Fisher wrote:

            > Klaus Bosau wrote:
            >
            > > [source'ing experiment]
            > >
            > > Now I'm wondering a bit if there might be something like an upper
            > > limit on the amount of source'd material. What do you think?
            >
            > I suppose that is possible, but I still suspect some sort of conflict
            > between the scripts. I would look closely at the parts of the two
            > scripts that, when deleted, lead to a working system. Do things start
            > working as soon as you delete ANY plugin (such as the standard ones,
            > in $VIMRUNTIME/plugin/ )?

            Yes. I have to ensure however that the size of the moved material is
            about equal to the size of the initially moved plugin. - How large is
            the amount of sourced material in your local environment, Benji? Do you
            run plugins not shipped with Vim too? And if yes, which ones? (Sorry for
            I'm asking so much questions...)

            Thanks,

            Klaus
          • Antoine J. Mechelynck
            ... I m still thinking of something nasty, stack overflow, buffer ovrerun, using an uninitialized pointer, etc. That bytestring looked to me like an
            Message 5 of 15 , Jan 1, 2003
            • 0 Attachment
              Klaus Bosau <kbosau@...> wrote:
              > On Tue, 31 Dec 2002, Antoine J. Mechelynck wrote:
              >
              > > Oops! 2nd byte is FA, not F0.
              >
              > Hi Antoine,
              >
              > the sequence in question showed up where (normal mode) keystrokes
              > normally are shown. Are there any commands which could have caused this?
              > "128" for instance... It denotes the symbol for the european monetary
              > unit. Isn't it unlikely that a normal mode command contains this
              > character?
              >
              > Thanks,
              >
              > Klaus

              I'm still thinking of something nasty, stack overflow, buffer ovrerun, using
              an uninitialized pointer, etc. That bytestring looked to me like an
              out-of-contest snippet of program code, possibly for some Intel x86
              platform, but too short to be easily understood. In that case your 128 would
              be a 0x80 byte somewhere in an instruction, and it cannot be interpreted
              without knowing at least where the (possibly multibyte) instruction starts.
              And anyway once you start unintentionally handling program code as data, all
              hell can break loose anytime.

              Tony.
            • Benji Fisher
              ... Since your answer is yes, I am coming around to your point of view. I do not use all that many plugins. I do use the LaTeX suite,
              Message 6 of 15 , Jan 1, 2003
              • 0 Attachment
                Klaus Bosau wrote:
                > On Tue, 31 Dec 2002, Benji Fisher wrote:
                >
                >
                >>Klaus Bosau wrote:
                >>
                >>
                >>>[source'ing experiment]
                >>>
                >>>Now I'm wondering a bit if there might be something like an upper
                >>>limit on the amount of source'd material. What do you think?
                >>
                >>I suppose that is possible, but I still suspect some sort of conflict
                >>between the scripts. I would look closely at the parts of the two
                >>scripts that, when deleted, lead to a working system. Do things start
                >>working as soon as you delete ANY plugin (such as the standard ones,
                >>in $VIMRUNTIME/plugin/ )?
                >
                >
                > Yes. I have to ensure however that the size of the moved material is
                > about equal to the size of the initially moved plugin. - How large is
                > the amount of sourced material in your local environment, Benji? Do you
                > run plugins not shipped with Vim too? And if yes, which ones? (Sorry for
                > I'm asking so much questions...)

                Since your answer is "yes," I am coming around to your point of
                view. I do not use all that many plugins. I do use the LaTeX suite,
                http://www.vim.org/script.php?script_id=475
                and $VIMRUNTIME/macros/matchit.vim .

                What is your OS? How many plugins (in KB, say) do you use? If it
                really is an out-of-memory problem, it should be possible to reproduce
                with your testmenu.vim and enough dummy functions (defined but not
                invoked) of the form

                fun! Dummy1()
                echo "This is dummy function #1."
                let foo = 1
                let bar = 2
                if foo == bar
                echo "Problems have started!"
                endif
                endfun

                How many does it take?

                HTH --Benji Fisher
              • Klaus Bosau
                ... 152kB and 34 kB? You re at the edge... ;-) ... W98 (here) ... About 160 kB. ... I did a somehow radical experiment with 39179 Dummies (including me) resp.
                Message 7 of 15 , Jan 1, 2003
                • 0 Attachment
                  On Wed, 1 Jan 2003, Benji Fisher wrote:

                  > Since your answer is "yes," I am coming around to your point of
                  > view. I do not use all that many plugins. I do use the LaTeX suite,
                  > http://www.vim.org/script.php?script_id=475
                  > and $VIMRUNTIME/macros/matchit.vim .

                  152kB and 34 kB? You're at the edge... ;-)

                  > What is your OS?

                  W98 (here)

                  > How many plugins (in KB, say) do you use?

                  About 160 kB.

                  > If it really is an out-of-memory problem, it should be possible to
                  > reproduce with your testmenu.vim and enough dummy functions (defined
                  > but not invoked) of the form
                  >
                  > fun! Dummy1()
                  > echo "This is dummy function #1."
                  > let foo = 1
                  > let bar = 2
                  > if foo == bar
                  > echo "Problems have started!"
                  > endif
                  > endfun
                  >
                  > How many does it take?

                  I did a somehow radical experiment with 39179 Dummies (including me)
                  resp. 5.7 MB of source'd material. This made Vim go crazy a bit. ;-)
                  Looks not so bad though, but of course this might become easier as soon
                  as the structures become more complicated. (I actually don't think that
                  it is a simple allocation problem.) Keep in mind too, the script
                  referred to didn't contain any active parts as the menu problem showed
                  up. (It has not yet been started!) Which kind of interference could have
                  taken place here?

                  Kind regards,

                  Klaus
                Your message has been successfully submitted and would be delivered to recipients shortly.