aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/info.c8
-rw-r--r--src/util.c22
2 files changed, 22 insertions, 8 deletions
diff --git a/src/info.c b/src/info.c
index e8d0102..bde4bf4 100644
--- a/src/info.c
+++ b/src/info.c
@@ -15,8 +15,16 @@ void info_handler(struct player_t *player)
return;
}
+ printf("Updating price data...\n");
+ if(!get_stock_info(sym, &stock->current_price, &stock->fullname))
+ {
+ printf("Failed to update prices.\n");
+ return;
+ }
+
free(sym);
+
printf("Transaction history for '%s':\n", stock->symbol);
printf("================================================================================\n");
print_history(stock);
diff --git a/src/util.c b/src/util.c
index eccdef5..8cd197d 100644
--- a/src/util.c
+++ b/src/util.c
@@ -194,12 +194,15 @@ void print_handler(struct player_t *player)
for(uint i = 0; i < player->portfolio_len; ++i)
{
struct stock_t *stock = player->portfolio + i;
- ullong total_value = stock->count * stock->current_price.cents;
- printf("%6s %40s %5llu * $%5llu.%02llu = $%6llu.%02llu\n",
- stock->symbol, stock->fullname, stock->count, stock->current_price.cents / 100, stock->current_price.cents % 100,
- total_value / 100, total_value % 100);
-
- portfolio_value += stock->current_price.cents * stock->count;
+ if(stock->count)
+ {
+ ullong total_value = stock->count * stock->current_price.cents;
+ printf("%6s %40s %5llu * $%5llu.%02llu = $%6llu.%02llu\n",
+ stock->symbol, stock->fullname, stock->count, stock->current_price.cents / 100, stock->current_price.cents % 100,
+ total_value / 100, total_value % 100);
+
+ portfolio_value += stock->current_price.cents * stock->count;
+ }
}
}
printf("================================================================================\n");
@@ -247,8 +250,11 @@ void update_handler(struct player_t *player)
for(uint i = 0; i < player->portfolio_len; ++i)
{
struct stock_t *stock = player->portfolio + i;
- printf("%s...\n", stock->symbol);
- get_stock_info(stock->symbol, &stock->current_price, &stock->fullname);
+ if(stock->count > 0)
+ {
+ printf("%s...\n", stock->symbol);
+ get_stock_info(stock->symbol, &stock->current_price, &stock->fullname);
+ }
}
}