diff options
-rw-r--r-- | epan/ftypes/ftype-double.c | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/epan/ftypes/ftype-double.c b/epan/ftypes/ftype-double.c index 70d1723741..4792e67d94 100644 --- a/epan/ftypes/ftype-double.c +++ b/epan/ftypes/ftype-double.c @@ -106,6 +106,20 @@ val_subtract(fvalue_t * dst, const fvalue_t *a, const fvalue_t *b, char **err_pt return FT_OK; } +enum ft_result +val_multiply(fvalue_t * dst, const fvalue_t *a, const fvalue_t *b, char **err_ptr _U_) +{ + dst->value.floating = a->value.floating * b->value.floating; + return FT_OK; +} + +enum ft_result +val_divide(fvalue_t * dst, const fvalue_t *a, const fvalue_t *b, char **err_ptr _U_) +{ + dst->value.floating = a->value.floating / b->value.floating; + return FT_OK; +} + static int cmp_order(const fvalue_t *a, const fvalue_t *b) { @@ -160,8 +174,8 @@ ftype_register_double(void) val_unary_minus, /* unary_minus */ val_add, /* add */ val_subtract, /* subtract */ - NULL, /* multiply */ - NULL, /* divide */ + val_multiply, /* multiply */ + val_divide, /* divide */ NULL, /* modulo */ }; @@ -193,8 +207,8 @@ ftype_register_double(void) val_unary_minus, /* unary_minus */ val_add, /* add */ val_subtract, /* subtract */ - NULL, /* multiply */ - NULL, /* divide */ + val_multiply, /* multiply */ + val_divide, /* divide */ NULL, /* modulo */ }; |