Menu

#591 Non-ASCII characters in source

6.36
closed
Build (56)
1
2025-04-18
2024-11-13
No

We have a Korean user who is getting compilation errors with OWLNext source due to non-ASCII characters in the source that can't be interpreted in their code page. In particular, the copyright symbol in version.h and other files. Might you consider replacing this with (c) or something else that is pure ASCII?

  • include/owl/commview.h: Copyright © 1999 by Yura Bidus . All Rights Reserved.
  • include/owl/listviewctrl.h: Copyright © 2011 Vidar Hasfjord
  • include/owl/listwind.h: Copyright © 2011 Vidar Hasfjord
  • include/owl/progressbar.h: Copyright © 2010-2011 Jogy
  • include/owl/tabbed.h: Copyright © 1998 by Bidus Yura. All Rights Reserved.
  • include/owl/transfer.h: Copyright © 2010-2011 Vidar Hasfjord
  • include/owl/transferbuffer.h: Copyright © 2010 Vidar Hasfjord
  • include/owl/validate.rc: IDS_VALNOTINRANGE ""ü-I,3,ê,½'l,I %ld ,c,ç %ld ,I"I^I"à,Å,I, ,è,Ü,1,ñ?B"
  • include/owl/version.h: Copyright © 1991, 1996 by Borland International, All Rights Reserved
  • include/owl/version.h: Copyright © 1998-2000 by Yura Bidus
  • include/owlext/comboexp.h: Copyright © Antony Corbett 1995. All Rights Reserved
  • include/owlext/dirdialg.h: Copyright © 1998 by Yura Bidus. All Rights Reserved.
  • include/owlext/dirdialg.rc: Copyright © 1998 by Yura Bidus. All Rights Reserved.
  • include/owlext/tipdialg.h: Copyright © 1998 by Yura Bidus. All Rights Reserved.
  • include/owlext/tipdialg.rc: Copyright © 1998 by Yura Bidus. All Rights Reserved.
  • include/owlext/tipdialg.rh: Copyright © 1998 by Yura Bidus. All Rights Reserved.
  • source/owlcore/commview.cpp: Copyright © 1999 by Yura Bidus . All Rights Reserved.
  • source/owlcore/docmanag.cpp: _stprintf(buf, "'x°: ¶Zs-ñ ID %u ,ªOc,A,c,è,Ü,1,ñ", sid);
  • source/owlcore/listviewctrl.cpp: Copyright © 2011 Vidar Hasfjord
  • source/owlcore/progressbar.cpp: Copyright © 2010-2011 Jogy
  • source/owlcore/psview.cpp: Copyright © 1999 by Yura Bidus . All Rights Reserved.
  • source/owlcore/tabbed.cpp: Copyright © 1998 by Bidus Yura. All Rights Reserved.
  • source/owlcore/transfer.cpp: Copyright © 2010-2011 Vidar Hasfjord
  • source/owlcore/transferbuffer.cpp: Copyright © 2010 Vidar Hasfjord
  • source/owlcore/version.h: Copyright © 1991, 1996 by Borland International, All Rights Reserved
  • source/owlcore/version.h: Copyright © 1998-2000 by Yura Bidus
  • source/owlext/comboexp.cpp: Copyright © Antony Corbett 1995. All Rights Reserved
  • source/owlext/dirdialg.cpp: Copyright © 1998 by Yura Bidus. All Rights Reserved.
  • source/owlext/tipdialg.cpp: Copyright © 1998 by Yura Bidus. All Rights Reserved.
  • source/parse_version.bat: echo Copyright © 2010-2012 Vidar Hasfjord
  • source/vc_detection.inc: # Copyright © 2011-2015 Vidar Hasfjord

Related

Discussion: vc_detection.inc encoding issue with newest VS2022 (_MSC_VER 1943)
News: 2025/04/owlnext-7019-64427-and-63612-updates
Wiki: OWLNext_Stable_Releases

Discussion

  • Sebastian Ledesma

    Hi Andrew:

    A couple of questions:
    Wich compiler is he using?
    Wich version of OWLNext?

    A couple of observations:
    1 -Modern IDE and compilers allows to edit/save/compile in UTF-8.
    2 - I've checked some of the source codes and they dont have the BOM, so they are ANSI. For most of the cases it just a character into the comment, but it seems that the compiler it's analyzing the code inside the commentary as well. In any case it's not difficult to switch back to (C) in theses cases. In the case of the docmanager.cpp, there is a macro conditioning that part of the source code only be compiled when the local language it's Japanese.

     
  • Vidar Hasfjord

    Vidar Hasfjord - 2024-11-13

    Hi Andrew, welcome to the project, and thanks for reporting this issue!

    I propose we make sure all the source code is ASCII, unless it is full Unicode.

    • Copyright symbol: Most of the problem instances you listed regards the use of the copyright symbol, which is no problem to change to "(c)". I will do so ASAP.
       
    • Japanese text in resource files: Slightly more worrisome is the instance of Japanese text in "validate.rc". I propose resource files are either changed to UTF-16 encoding throughout OWLNext, for general multi-language support, or that multi-language support is dropped and the text removed.
       
    • Japanese text in C++ source files: The compilation flag BI_MSG_LANGUAGE for conditional code for other languages than English is no longer supported. The associated text should be moved to resource files, or removed.

    For more about support for Japanese and other languages:

     

    Related

    Feature Requests: #80
    Feature Requests: #86


    Last edit: Vidar Hasfjord 2024-11-13
  • Vidar Hasfjord

    Vidar Hasfjord - 2024-11-13
    • labels: --> Build
    • status: open --> pending
    • assigned_to: Vidar Hasfjord
    • Group: unspecified --> 8
     
  • Vidar Hasfjord

    Vidar Hasfjord - 2024-11-13

    This issue has now been resolved on the trunk [r7375] by changing copyright character "©" to "(c)" (with one exception*), as well as by removing the obsolete build flag BI_MSG_LANGUAGE and the Japanese text in the source code.

    * There is one "©" left, but this is in a UTF-16 encoded file ("examples\razee\version.rc").

     

    Related

    Commit: [r7375]

  • Andrew Kirmse

    Andrew Kirmse - 2024-11-13

    Thanks for the fix! FYI you are helping to keep alive the MMORPG Meridian 59 from 1996:

    https://github.com/Meridian59/Meridian59
    https://meridian59.com/

     
    👍
    2
  • Vidar Hasfjord

    Vidar Hasfjord - 2024-11-13

    @akirmse:

    FYI you are helping to keep alive the MMORPG Meridian 59 from 1996

    Wow, that's cool to learn!

    We need to add an entry on our OWLNext Real-World Application Showcase page, don't you think? Send me a screenshot and an entry description, including some OWL and development related background (see page for inspiration), and I will add an entry for you.

     

    Related

    Wiki: OWLNext_Application_Showcase

    • Andrew Kirmse

      Andrew Kirmse - 2024-11-13

      Sure, here's a screenshot and a blurb:

      https://shared.fastly.steamstatic.com/store_item_assets/steam/apps/893390/ss_97909315404912e3ed4e43c15a8f5b3b5f50295a.1920x1080.jpg?t=1705866175

      Meridian 59 (https://meridian59.com) was the first 3D massively-multiplayer
      online game, launched in 1996. It won roleplaying game of the year, and in
      2012 was released as open source. It continues to run for free today.

      The room editor was a forked version of WinDEU, an editor for the game
      Doom, built with OWL in Borland C++ 4.5. This was replaced with OWLNext in
      2015 so that development of the game can continue long into the future.


      Moderator: Removed superfluous quoted content.

       
      👍
      2

      Last edit: Vidar Hasfjord 2024-11-14
  • Vidar Hasfjord

    Vidar Hasfjord - 2024-11-14

    @akirmse wrote:

    here's a screenshot and a blurb [for the showcase page]

    Great, thanks!

    I've embellished it a little and added an entry now. Let me know if you want any changes.

    See OWLNext Real-World Application Showcase.

     
  • Vidar Hasfjord

    Vidar Hasfjord - 2025-04-12
    • Description has changed (formatting).

    • Group: 8 --> 6.36

     

    Last edit: Vidar Hasfjord 2025-04-12
  • Vidar Hasfjord

    Vidar Hasfjord - 2025-04-12

    I've now performed a more thorough check for non-ASCII source code, leading to further conversions to pure ASCII [r7651].

    To prevent build issues in our LTS versions, the ticket has been retargeted to 6.36, and the fixes have hence been merged into branches 7 [r7652], 6.44 [r7653] and 6.36 [r7654].

    The relevant fixes have been merged into Owlet as well [r7656].

     

    Related

    Commit: [r7651]
    Commit: [r7652]
    Commit: [r7653]
    Commit: [r7654]
    Commit: [r7656]


    Last edit: Vidar Hasfjord 2025-04-12
  • Vidar Hasfjord

    Vidar Hasfjord - 2025-04-18
    • Status: pending --> closed
     

Log in to post a comment.

MongoDB Logo MongoDB