diff --git a/src/pq/db_pq.c b/src/pq/db_pq.c
index bfa929c4e..bbcf002ee 100644
--- a/src/pq/db_pq.c
+++ b/src/pq/db_pq.c
@@ -181,13 +181,16 @@ TALER_DB_extract_amount_nbo (PGresult *result,
r_amount_nbo->value = *(uint32_t *) PQgetvalue (result, row, val_num);
r_amount_nbo->fraction = *(uint32_t *) PQgetvalue (result, row, frac_num);
- memset (r_amount_nbo->currency, 0, TALER_CURRENCY_LEN);
- // FIXME: overflow?
- len = PQgetlength (result, row, curr_num);
- len = GNUNET_MIN (TALER_CURRENCY_LEN, len);
- memcpy (r_amount_nbo->currency, PQgetvalue (result, row, curr_num), len);
- r_amount_nbo->currency[TALER_CURRENCY_LEN - 1] = '\0';
-
+ memset (r_amount_nbo->currency,
+ 0,
+ TALER_CURRENCY_LEN);
+ len = GNUNET_MIN (TALER_CURRENCY_LEN - 1,
+ PQgetlength (result, row, curr_num));
+ memcpy (r_amount_nbo->currency,
+ PQgetvalue (result,
+ row,
+ curr_num),
+ len);
return GNUNET_OK;
}
diff --git a/src/pq/db_pq.h b/src/pq/db_pq.h
index cb2020b96..720dad5c5 100644
--- a/src/pq/db_pq.h
+++ b/src/pq/db_pq.h
@@ -14,7 +14,7 @@
TALER; see the file COPYING. If not, If not, see
*/
/**
- * @file include/taler_db_lib.h
+ * @file pq/db_pq.h
* @brief helper functions for DB interactions
* @author Sree Harsha Totakura
* @author Florian Dold
@@ -186,4 +186,4 @@ TALER_DB_extract_amount (PGresult *result,
#endif /* TALER_DB_LIB_H_ */
-/* end of include/taler_db_lib.h */
+/* end of db/db_pq.h */