WritePreferenceString with "├" Problem

Windows specific forum
PeDe
Enthusiast
Enthusiast
Posts: 278
Joined: Sun Nov 26, 2017 3:13 pm

WritePreferenceString with "├" Problem

Post by PeDe »

PB v6.12 x86/x64/Asm/C, Windows 7 x64

Saving the special character "├" does not work correctly.
It works correctly with Debian 12 and PB v6.12 x64.
The error was discovered from AZJIO here in this thread:
viewtopic.php?p=628382#p628382

Could it be that the character is outside the valid Unicode range? I am not familiar with it.

Peter

Code: Select all

CreatePreferences(GetTemporaryDirectory()+"Preferences.ini")

PreferenceGroup("Test 1")
WritePreferenceString(#DOUBLEQUOTE$ + "●" + #DOUBLEQUOTE$, "Test 1")
WritePreferenceString(#DOUBLEQUOTE$ + "┌" + #DOUBLEQUOTE$, "Test 2")
WritePreferenceString(#DOUBLEQUOTE$ + "└" + #DOUBLEQUOTE$, "Test 3")
WritePreferenceString(#DOUBLEQUOTE$ + "├" + #DOUBLEQUOTE$, "Test 4")
PreferenceComment("")

Test$ = "├"
PreferenceGroup("Test 2")
WritePreferenceString(Test$, "Test 1")
WritePreferenceString("●", "Test 2")
WritePreferenceString("┌", "Test 3")
WritePreferenceString("└", "Test 4")
PreferenceComment("")

ClosePreferences()

Saved Preference.ini:

Code: Select all


[Test 1]
"●" = Test 1
"├" = Test 4
; 
"└" = Test 3
[Test 2]
┌ = Test 3
● = Test 2
└ = Test 4
; 
benubi
Enthusiast
Enthusiast
Posts: 215
Joined: Tue Mar 29, 2005 4:01 pm

Re: WritePreferenceString with "├" Problem

Post by benubi »

No, if it gets rendered everywhere as a glyph it must be in the range. That glitch is weird.
But there's probably nothing to worry about :?
normeus
Enthusiast
Enthusiast
Posts: 470
Joined: Fri Apr 20, 2012 8:09 pm
Contact:

Re: WritePreferenceString with "├" Problem

Post by normeus »

It is an ASCII encoding problem and it is not the character you think:

the first byte of the character is an ascii Formfeed, it might be an editor problem and not a compiler problem.

Code: Select all

unicode$="┌"
ShowMemoryViewer(@unicode$,8)
; this is the problem 
WritePreferenceString(#DOUBLEQUOTE$ + "┌" + #DOUBLEQUOTE$, "Test 2")
For a real Halloween scare, try running this code: ( notice the space in " ┌")

Code: Select all

CreatePreferences(GetTemporaryDirectory()+"Preferences.ini")

Debug Asc( "┌")
unicode$="┌"
ShowMemoryViewer(@unicode$,8)
WritePreferenceString(" ┌", "Test 3")

ClosePreferences()

Norm.
google Translate;Makes my jokes fall flat- Fait mes blagues tombent à plat- Machte meine Witze verpuffen- Eh cumpari ci vo sunari
Post Reply