Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Another string related problem (*solved*)
#1
Let me demonstrate this nasty bug...

Code:
sub printerPutString(x as ubyte,y as ubyte,attribute as ubyte,char$ as string) print at y,x;char$ end sub sub Frame(x1 as ubyte,y1 as ubyte,width as ubyte,height as ubyte) printerPutString(x1,y1,6,chr(35)) printerPutString(x1,y1+height,6,chr(35)) printerPutString(x1+width,y1,6,chr(35)) printerPutString(x1+width,y1+height,6,chr(35)) strg$="" for old=1 to width-1 strg$=strg$+chr(33) next old printerPutString(x1+1,y1,7,strg$) printerPutString(x1+1,y1+height,7,strg$) for old=y1+1 to y1+height-1 printerPutString(x1,old,7,chr(34)) printerPutString(x1+width,old,7,chr(34)) next old end sub Frame(15,0,16,5)

This does not work correctly, but it *should* work.
print len strg$ is 15, but in procedure the char$ length is calculated with 0 lchars.
It works if I change the code to this:

Code:
sub printerPutString(x as ubyte,y as ubyte,attribute as ubyte,char$ as string) print at y,x;char$ end sub sub Frame(x1 as ubyte,y1 as ubyte,width as ubyte,height as ubyte) printerPutString(x1,y1,6,chr(35)) printerPutString(x1,y1+height,6,chr(35)) printerPutString(x1+width,y1,6,chr(35)) printerPutString(x1+width,y1+height,6,chr(35)) for old=x1+1 to x1+width-1 printerPutString(old,y1,7,chr(33)) printerPutString(old,y1+height,7,chr(33)) next old for old=y1+1 to y1+height-1 printerPutString(x1,old,7,chr(34)) printerPutString(x1+width,old,7,chr(34)) next old end sub Frame(15,0,16,5)
------------------------------------------------------------
http://lcd-one.da.ru redirector is dead
Visit my http://members.inode.at/838331/index.html home page!
Reply
#2
It looks like it is a problem with strings and SUB...
------------------------------------------------------------
http://lcd-one.da.ru redirector is dead
Visit my http://members.inode.at/838331/index.html home page!
Reply
#3
LCD Wrote:It looks like it is a problem with strings and SUB...
I see. Probably local / parameter string var$. Will check it. Thanks Smile
Reply
#4
boriel Wrote:
LCD Wrote:It looks like it is a problem with strings and SUB...
I see. Probably local / parameter string var$. Will check it. Thanks Smile
No problem. Thank you for looking into it.
------------------------------------------------------------
http://lcd-one.da.ru redirector is dead
Visit my http://members.inode.at/838331/index.html home page!
Reply
#5
LCD Wrote:
boriel Wrote:
LCD Wrote:It looks like it is a problem with strings and SUB...
I see. Probably local / parameter string var$. Will check it. Thanks Smile
No problem. Thank you for looking into it.
I think It's fixed. Please, download Version 1.4.0-s1876, and tell me if it works.
Reply
#6
boriel Wrote:I think It's fixed. Please, download Version 1.4.0-s1876, and tell me if it works.
I'm telling you that it works. Thank you!
------------------------------------------------------------
http://lcd-one.da.ru redirector is dead
Visit my http://members.inode.at/838331/index.html home page!
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)