flat assembler
Message board for the users of flat assembler.
![]() |
Author |
|
fasm9
sorry, but, i can't see anything
Quote:
|
|||
![]() |
|
comrade
How about now?
|
|||
![]() |
|
scientica
A few times I've had some unexplained issues when coding, and deleting lines, however I've always pushed Ctrl+Z and thought I did something wrong, perhaps I'm not as flawed as I occsionaly think.
![]() (btw I can see the images) _________________ ... a professor saying: "use this proprietary software to learn computer science" is the same as English professor handing you a copy of Shakespeare and saying: "use this book to learn Shakespeare without opening the book itself. - Bradley Kuhn |
|||
![]() |
|
Tomasz Grysztar
What set of options are you using?
|
|||
![]() |
|
Tomasz Grysztar
OK, got it. That was hard to reproduce but I've finally found what caused it - and it's fixed for the coming 1.47 release.
|
|||
![]() |
|
fasm9
comrade wrote: How about now? same. it seems my fault. i am using zone alarm pro 4.0.123.012 and mozilla 1.4 RC3 turned java, cookie, javascript off. set ZA pro High. but i wouldn't change the setting. anyway, that's ok, thanks. |
|||
![]() |
|
comrade
privalov wrote: OK, got it. That was hard to reproduce but I've finally found what caused it - and it's fixed for the coming 1.47 release. Just curious, what was problem? |
|||
![]() |
|
Tomasz Grysztar
It was because the undo buffer consists of the lines allocated in the same way as the reguar lines. Lines are 108h-byte chunks allocated from 64kB memory blocks, when there is no more free space on the top of the last block, allocation routine searches for the released (marked with -1 in place where usually address to next line in chain is stored) lines inside the block, and when no such line is found, it allocates the new 64kB block.
The routine that was deleting block was marking the last line of block as released, then storing the next line in undo buffer (because next line was about to have changed the pointer to previous line) and then copying all the characters after the end of selection from that line to the first line of block. If it happened that all 64kB block was fully used at that moment, the allocation routine was using that line (which has been just marked as released) to store the next line for undo, and so the assumption that the characters of just released line are still there was false. I have fixed it by marking the line as released only after that copying. |
|||
![]() |
|
comrade
Fascinating!
![]() |
|||
![]() |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2020, Tomasz Grysztar. Also on GitHub, YouTube, Twitter.
Website powered by rwasa.