Forum OpenACS Development: Response to PostgreSQL upper() / lower() functions and LATIN2 charset

How did you get tcl8.3 running with 8859-2? Does your setup correctly store POSTed values in the database?

I would love to use nsd8x instead of nsd76, but have not yet seen a configuration where it does not convert special characters, e.g. german umlauts, into two weird characters, exactly as described here http://dqd.com/~mayoff/encoding-doc.html.

Converting the database to an encoding other than utf-8 would be acceptable for me too, since I only need to run my site with 8859-1 (for the german umlauts mainly).

I tried the patches from http://www.ai.mit.edu/people/hqm/openacs, but they did not work for me - the umlauts are still getting transformed into two weird characters.

Adding a Ns_Log call in the patched conn.c, in the function Ns_QueryToSet, right after the call to Ns_DecodeUrlCharset like:

  /* Use "ascii" to get a "raw" encoding (no translation) */
  decode = Ns_DecodeUrlCharset(&ds, value, "8bit");
  Ns_Log(Notice, "decoded value is: %s", value);

makes the two weird characters instead of the umlauts appear in the log file. When Ns_DecodeUrlCharset is called with ascii instead of 8bit the same result appears in the logfile. I know very little about neither C nor character encodings, so I have no idea what is going wrong here.