+ {
+ const int enc = PQclientEncoding (r->conn);
+
+ /* According to section 22.2 of the Postgresql manual
+ a value of zero (SQL_ASCII) indicates
+ "a declaration of ignorance about the encoding".
+ Accordingly, we use the default encoding
+ if we find this value.
+ */
+ encoding = enc ? pg_encoding_to_char (enc) : get_default_encoding ();
+
+ /* Create the dictionary and populate it */
+ *dict = r->dict = dict_create (encoding);
+ }