- GList* list = g_list_first(GLOBALS->ope_list);
- for (; list; list = g_list_next(list)) {
- GValue val = G_VALUE_INIT;
- SV* sv = val_to_sv(EXT_TRANSACTION(&val, list->data));
- mXPUSHs(sv);
+
+ GList* acc_list = g_hash_table_get_values(GLOBALS->h_acc);
+ GList* acc_link = g_list_first(acc_list);
+ for (; acc_link; acc_link = g_list_next(acc_link)) {
+ Account *acc = acc_link->data;
+
+ GList* txn_link = g_queue_peek_head_link(acc->txn_queue);
+ for (; txn_link; txn_link = g_list_next(txn_link)) {
+ Transaction* txn = txn_link->data;
+
+ GValue val = G_VALUE_INIT;
+ SV* sv = val_to_sv(EXT_TRANSACTION(&val, txn));
+ mXPUSHs(sv);
+ }