diff options
Diffstat (limited to 'libical/src/libicalss/icalgauge.c')
-rw-r--r-- | libical/src/libicalss/icalgauge.c | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/libical/src/libicalss/icalgauge.c b/libical/src/libicalss/icalgauge.c index f4854c747b..a181053d21 100644 --- a/libical/src/libicalss/icalgauge.c +++ b/libical/src/libicalss/icalgauge.c @@ -33,16 +33,16 @@ #include "icalssyacc.h" -typedef void* yyscan_t; +int ssparse(void); -int ssparse(yyscan_t ); +extern char *input_buffer; +extern char *input_buffer_p; +struct icalgauge_impl *icalss_yy_gauge; icalgauge* icalgauge_new_from_sql(char* sql, int expand) { struct icalgauge_impl *impl; - yyscan_t yy_globals = NULL; - int r; if ( ( impl = (struct icalgauge_impl*) @@ -56,14 +56,10 @@ icalgauge* icalgauge_new_from_sql(char* sql, int expand) impl->where = pvl_newlist(); impl->expand = expand; - sslex_init(&yy_globals); - - ssset_extra(impl, yy_globals); - - ss_scan_string(sql, yy_globals); + icalss_yy_gauge = impl; + input_buffer = input_buffer_p = sql; - r = ssparse(yy_globals); - sslex_destroy(yy_globals); + r = ssparse(); if (r == 0) { return impl; |