@Jabirulo
Quote:
Catalog (owb.catalog) doesn't seems to be closed on quit/exit, as I can't flush it from memory to test updated/fixed localization. Thus i need to fast reboor miggy to test updated catalog
That strange, because:
locale.cpp:
#include "gui.h"
/* public */
#include <proto/dos.h>
#include <proto/exec.h>
#include <proto/locale.h>
#include <libraries/locale.h>
/* private */
#include "alocale.h"
#include "owb_cat.h"
static struct Catalog *catalog;
struct Locale *locale;
LONG locale_timezone_offset;
ULONG locale_init(void)
{
locale = OpenLocale(NULL);
locale_timezone_offset = -locale->loc_GMTOffset * 60;
catalog = OpenCatalog(
NULL, "OWB.catalog",
OC_BuiltInLanguage, "english",
OC_Version, 1, /* required catalog version */
TAG_DONE
);
if (catalog)
{
int c;
for (c = 0; c < NUMCATSTRING; c++)
{
#ifdef __amigaos4__
((char**)__stringtable)[ c ] = (char *)GetCatalogStr(catalog, c, (char*)__stringtable[c]);
#else
((char**)__stringtable)[ c ] = GetCatalogStr(catalog, c, (char*)__stringtable[c]);
#endif
}
}
return (TRUE);
}
void locale_cleanup(void)
{
CloseLocale(locale);
CloseCatalog(catalog);
}
And then, in the main:
if(open_libs())
{
if(safety_check())
{
app = create_application(argc > 1 ? (char*)argv[1] : (char *)"");
if(app)
{
main_loop();
}
destroy_application();
}
}
close_libs();
Where destroy_application() are:
void destroy_application(void)
{
if(app)
{
MUI_DisposeObject(app);
methodstack_cleanup();
classes_cleanup();
locale_cleanup();
app = NULL;
}
}
So probably it should be ok.