~ubuntu-branches/ubuntu/trusty/rygel/trusty

« back to all changes in this revision

Viewing changes to tests/rygel-http-time-seek.c

  • Committer: Package Import Robot
  • Author(s): Andreas Henriksson
  • Date: 2011-12-16 15:21:25 UTC
  • mfrom: (14.1.2 sid)
  • Revision ID: package-import@ubuntu.com-20111216152125-qgn31dkfmhouhrf0
Upload to unstable

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* rygel-http-time-seek.c generated by valac 0.12.0, the Vala compiler
 
1
/* rygel-http-time-seek.c generated by valac 0.14.1, the Vala compiler
2
2
 * generated from rygel-http-time-seek.vala, do not modify */
3
3
 
4
4
/*
197
197
GType rygel_subtitle_get_type (void) G_GNUC_CONST;
198
198
GType rygel_http_transcode_handler_get_type (void) G_GNUC_CONST;
199
199
GType rygel_audio_item_get_type (void) G_GNUC_CONST;
200
 
RygelHTTPSeek* rygel_http_seek_construct (GType object_type, SoupMessage* msg, gint64 start, gint64 stop, gint64 step, gint64 total_length);
 
200
static gboolean rygel_http_time_seek_parse_seconds (const gchar* range_token, gint64* value);
 
201
static gboolean rygel_http_time_seek_parse_time (const gchar* range_token, gint64* value);
 
202
RygelHTTPSeek* rygel_http_seek_construct (GType object_type, SoupMessage* msg, gint64 start, gint64 stop, gint64 step, gint64 total_length, GError** error);
201
203
gboolean rygel_http_time_seek_needed (RygelHTTPGet* request);
202
204
gboolean rygel_media_item_is_live_stream (RygelMediaItem* self);
203
205
gboolean rygel_http_time_seek_requested (RygelHTTPGet* request);
213
215
 
214
216
static glong string_strnlen (gchar* str, glong maxlen) {
215
217
        glong result = 0L;
216
 
        gchar* _tmp0_ = NULL;
 
218
        gchar* _tmp0_;
 
219
        glong _tmp1_;
 
220
        gchar* _tmp2_ = NULL;
217
221
        gchar* end;
218
 
        _tmp0_ = memchr (str, 0, (gsize) maxlen);
219
 
        end = _tmp0_;
220
 
        if (end == NULL) {
221
 
                result = maxlen;
 
222
        gchar* _tmp3_;
 
223
#line 1301 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
224
        _tmp0_ = str;
 
225
#line 1301 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
226
        _tmp1_ = maxlen;
 
227
#line 1301 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
228
        _tmp2_ = memchr (_tmp0_, 0, (gsize) _tmp1_);
 
229
#line 1301 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
230
        end = _tmp2_;
 
231
#line 1302 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
232
        _tmp3_ = end;
 
233
#line 1302 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
234
        if (_tmp3_ == NULL) {
 
235
#line 236 "rygel-http-time-seek.c"
 
236
                glong _tmp4_;
 
237
#line 1303 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
238
                _tmp4_ = maxlen;
 
239
#line 1303 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
240
                result = _tmp4_;
 
241
#line 1303 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
222
242
                return result;
 
243
#line 244 "rygel-http-time-seek.c"
223
244
        } else {
224
 
                result = (glong) (end - str);
 
245
                gchar* _tmp5_;
 
246
                gchar* _tmp6_;
 
247
#line 1305 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
248
                _tmp5_ = end;
 
249
#line 1305 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
250
                _tmp6_ = str;
 
251
#line 1305 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
252
                result = (glong) (_tmp5_ - _tmp6_);
 
253
#line 1305 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
225
254
                return result;
 
255
#line 256 "rygel-http-time-seek.c"
226
256
        }
227
257
}
228
258
 
231
261
        gchar* result = NULL;
232
262
        glong string_length = 0L;
233
263
        gboolean _tmp0_ = FALSE;
234
 
        gchar* _tmp3_ = NULL;
 
264
        glong _tmp1_;
 
265
        gboolean _tmp3_;
 
266
        glong _tmp9_;
 
267
        glong _tmp15_;
 
268
        glong _tmp18_;
 
269
        glong _tmp19_;
 
270
        glong _tmp20_;
 
271
        glong _tmp21_;
 
272
        glong _tmp22_;
 
273
        gchar* _tmp23_ = NULL;
 
274
#line 1312 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
235
275
        g_return_val_if_fail (self != NULL, NULL);
236
 
        if (offset >= 0) {
237
 
                _tmp0_ = len >= 0;
 
276
#line 1314 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
277
        _tmp1_ = offset;
 
278
#line 1314 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
279
        if (_tmp1_ >= ((glong) 0)) {
 
280
#line 281 "rygel-http-time-seek.c"
 
281
                glong _tmp2_;
 
282
#line 1314 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
283
                _tmp2_ = len;
 
284
#line 1314 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
285
                _tmp0_ = _tmp2_ >= ((glong) 0);
 
286
#line 287 "rygel-http-time-seek.c"
238
287
        } else {
 
288
#line 1314 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
239
289
                _tmp0_ = FALSE;
240
 
        }
241
 
        if (_tmp0_) {
242
 
                glong _tmp1_;
243
 
                _tmp1_ = string_strnlen ((gchar*) self, offset + len);
244
 
                string_length = _tmp1_;
245
 
        } else {
246
 
                gint _tmp2_;
247
 
                _tmp2_ = strlen (self);
248
 
                string_length = (glong) _tmp2_;
249
 
        }
250
 
        if (offset < 0) {
251
 
                offset = string_length + offset;
252
 
                g_return_val_if_fail (offset >= 0, NULL);
253
 
        } else {
254
 
                g_return_val_if_fail (offset <= string_length, NULL);
255
 
        }
256
 
        if (len < 0) {
257
 
                len = string_length - offset;
258
 
        }
259
 
        g_return_val_if_fail ((offset + len) <= string_length, NULL);
260
 
        _tmp3_ = g_strndup (((gchar*) self) + offset, (gsize) len);
261
 
        result = _tmp3_;
262
 
        return result;
263
 
}
264
 
 
265
 
 
266
 
static gchar string_get (const gchar* self, glong index) {
267
 
        gchar result = '\0';
268
 
        g_return_val_if_fail (self != NULL, '\0');
269
 
        result = ((gchar*) self)[index];
270
 
        return result;
271
 
}
272
 
 
273
 
 
274
 
static gdouble double_parse (const gchar* str) {
275
 
        gdouble result = 0.0;
276
 
        gdouble _tmp0_;
277
 
        g_return_val_if_fail (str != NULL, 0.0);
278
 
        _tmp0_ = g_ascii_strtod (str, NULL);
279
 
        result = _tmp0_;
280
 
        return result;
 
290
#line 291 "rygel-http-time-seek.c"
 
291
        }
 
292
#line 1314 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
293
        _tmp3_ = _tmp0_;
 
294
#line 1314 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
295
        if (_tmp3_) {
 
296
#line 297 "rygel-http-time-seek.c"
 
297
                glong _tmp4_;
 
298
                glong _tmp5_;
 
299
                glong _tmp6_ = 0L;
 
300
#line 1316 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
301
                _tmp4_ = offset;
 
302
#line 1316 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
303
                _tmp5_ = len;
 
304
#line 1316 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
305
                _tmp6_ = string_strnlen ((gchar*) self, _tmp4_ + _tmp5_);
 
306
#line 1316 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
307
                string_length = _tmp6_;
 
308
#line 309 "rygel-http-time-seek.c"
 
309
        } else {
 
310
                gint _tmp7_;
 
311
                gint _tmp8_;
 
312
#line 1318 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
313
                _tmp7_ = strlen (self);
 
314
#line 1318 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
315
                _tmp8_ = _tmp7_;
 
316
#line 1318 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
317
                string_length = (glong) _tmp8_;
 
318
#line 319 "rygel-http-time-seek.c"
 
319
        }
 
320
#line 1321 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
321
        _tmp9_ = offset;
 
322
#line 1321 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
323
        if (_tmp9_ < ((glong) 0)) {
 
324
#line 325 "rygel-http-time-seek.c"
 
325
                glong _tmp10_;
 
326
                glong _tmp11_;
 
327
                glong _tmp12_;
 
328
#line 1322 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
329
                _tmp10_ = string_length;
 
330
#line 1322 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
331
                _tmp11_ = offset;
 
332
#line 1322 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
333
                offset = _tmp10_ + _tmp11_;
 
334
#line 1323 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
335
                _tmp12_ = offset;
 
336
#line 1323 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
337
                g_return_val_if_fail (_tmp12_ >= ((glong) 0), NULL);
 
338
#line 339 "rygel-http-time-seek.c"
 
339
        } else {
 
340
                glong _tmp13_;
 
341
                glong _tmp14_;
 
342
#line 1325 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
343
                _tmp13_ = offset;
 
344
#line 1325 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
345
                _tmp14_ = string_length;
 
346
#line 1325 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
347
                g_return_val_if_fail (_tmp13_ <= _tmp14_, NULL);
 
348
#line 349 "rygel-http-time-seek.c"
 
349
        }
 
350
#line 1327 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
351
        _tmp15_ = len;
 
352
#line 1327 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
353
        if (_tmp15_ < ((glong) 0)) {
 
354
#line 355 "rygel-http-time-seek.c"
 
355
                glong _tmp16_;
 
356
                glong _tmp17_;
 
357
#line 1328 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
358
                _tmp16_ = string_length;
 
359
#line 1328 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
360
                _tmp17_ = offset;
 
361
#line 1328 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
362
                len = _tmp16_ - _tmp17_;
 
363
#line 364 "rygel-http-time-seek.c"
 
364
        }
 
365
#line 1330 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
366
        _tmp18_ = offset;
 
367
#line 1330 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
368
        _tmp19_ = len;
 
369
#line 1330 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
370
        _tmp20_ = string_length;
 
371
#line 1330 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
372
        g_return_val_if_fail ((_tmp18_ + _tmp19_) <= _tmp20_, NULL);
 
373
#line 1331 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
374
        _tmp21_ = offset;
 
375
#line 1331 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
376
        _tmp22_ = len;
 
377
#line 1331 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
378
        _tmp23_ = g_strndup (((gchar*) self) + _tmp21_, (gsize) _tmp22_);
 
379
#line 1331 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
380
        result = _tmp23_;
 
381
#line 1331 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
382
        return result;
 
383
#line 384 "rygel-http-time-seek.c"
 
384
}
 
385
 
 
386
 
 
387
static gint string_index_of (const gchar* self, const gchar* needle, gint start_index) {
 
388
        gint result = 0;
 
389
        gint _tmp0_;
 
390
        const gchar* _tmp1_;
 
391
        gchar* _tmp2_ = NULL;
 
392
        gchar* _result_;
 
393
        gchar* _tmp3_;
 
394
#line 1055 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
395
        g_return_val_if_fail (self != NULL, 0);
 
396
#line 1055 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
397
        g_return_val_if_fail (needle != NULL, 0);
 
398
#line 1056 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
399
        _tmp0_ = start_index;
 
400
#line 1056 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
401
        _tmp1_ = needle;
 
402
#line 1056 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
403
        _tmp2_ = strstr (((gchar*) self) + _tmp0_, (gchar*) _tmp1_);
 
404
#line 1056 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
405
        _result_ = _tmp2_;
 
406
#line 1058 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
407
        _tmp3_ = _result_;
 
408
#line 1058 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
409
        if (_tmp3_ != NULL) {
 
410
#line 411 "rygel-http-time-seek.c"
 
411
                gchar* _tmp4_;
 
412
#line 1059 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
413
                _tmp4_ = _result_;
 
414
#line 1059 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
415
                result = (gint) (_tmp4_ - ((gchar*) self));
 
416
#line 1059 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
417
                return result;
 
418
#line 419 "rygel-http-time-seek.c"
 
419
        } else {
 
420
#line 1061 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
421
                result = -1;
 
422
#line 1061 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
423
                return result;
 
424
#line 425 "rygel-http-time-seek.c"
 
425
        }
281
426
}
282
427
 
283
428
 
284
429
RygelHTTPTimeSeek* rygel_http_time_seek_construct (GType object_type, RygelHTTPGet* request, GError** error) {
285
430
        RygelHTTPTimeSeek * self = NULL;
286
431
        gchar* range = NULL;
287
 
        gchar* time = NULL;
288
432
        gchar** range_tokens = NULL;
289
433
        gint range_tokens_length1 = 0;
290
434
        gint _range_tokens_size_ = 0;
291
435
        gint64 start;
292
 
        RygelMediaItem* _tmp0_;
 
436
        RygelHTTPGet* _tmp0_;
 
437
        RygelMediaItem* _tmp1_;
 
438
        gint64 _tmp2_;
293
439
        gint64 duration;
 
440
        gint64 _tmp3_;
294
441
        gint64 stop;
295
 
        const gchar* _tmp1_ = NULL;
296
 
        gchar* _tmp2_;
 
442
        gint64 parsed_value;
 
443
        gboolean parsing_start;
 
444
        RygelHTTPGet* _tmp4_;
 
445
        SoupMessage* _tmp5_;
 
446
        SoupMessageHeaders* _tmp6_;
 
447
        const gchar* _tmp7_ = NULL;
 
448
        gchar* _tmp8_;
 
449
        const gchar* _tmp9_;
 
450
        RygelHTTPGet* _tmp55_;
 
451
        SoupMessage* _tmp56_;
 
452
        gint64 _tmp57_;
 
453
        gint64 _tmp58_;
 
454
        gint64 _tmp59_;
297
455
        GError * _inner_error_ = NULL;
 
456
#line 27 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
298
457
        g_return_val_if_fail (request != NULL, NULL);
 
458
#line 30 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
299
459
        start = (gint64) 0;
300
 
        _tmp0_ = request->item;
301
 
        duration = (RYGEL_IS_AUDIO_ITEM (_tmp0_) ? ((RygelAudioItem*) _tmp0_) : NULL)->duration * GST_SECOND;
302
 
        stop = duration - GST_MSECOND;
303
 
        _tmp1_ = soup_message_headers_get_one (request->msg->request_headers, "TimeSeekRange.dlna.org");
304
 
        _tmp2_ = g_strdup (_tmp1_);
 
460
#line 31 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
461
        _tmp0_ = request;
 
462
#line 31 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
463
        _tmp1_ = _tmp0_->item;
 
464
#line 31 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
465
        _tmp2_ = (RYGEL_IS_AUDIO_ITEM (_tmp1_) ? ((RygelAudioItem*) _tmp1_) : NULL)->duration;
 
466
#line 31 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
467
        duration = _tmp2_ * GST_SECOND;
 
468
#line 32 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
469
        _tmp3_ = duration;
 
470
#line 32 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
471
        stop = _tmp3_ - GST_MSECOND;
 
472
#line 33 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
473
        parsed_value = (gint64) 0;
 
474
#line 34 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
475
        parsing_start = TRUE;
 
476
#line 36 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
477
        _tmp4_ = request;
 
478
#line 36 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
479
        _tmp5_ = _tmp4_->msg;
 
480
#line 36 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
481
        _tmp6_ = _tmp5_->request_headers;
 
482
#line 36 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
483
        _tmp7_ = soup_message_headers_get_one (_tmp6_, "TimeSeekRange.dlna.org");
 
484
#line 36 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
485
        _tmp8_ = g_strdup (_tmp7_);
 
486
#line 36 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
305
487
        _g_free0 (range);
306
 
        range = _tmp2_;
307
 
        if (range != NULL) {
308
 
                gboolean _tmp3_;
309
 
                gchar* _tmp5_ = NULL;
310
 
                gchar* _tmp6_;
311
 
                gchar** _tmp7_;
312
 
                gchar** _tmp8_ = NULL;
313
 
                gboolean _tmp9_ = FALSE;
314
 
                gchar* _tmp12_;
315
 
                gchar _tmp13_;
316
 
                gboolean _tmp14_;
317
 
                gchar* _tmp18_;
318
 
                gchar _tmp19_;
319
 
                gboolean _tmp20_;
320
 
                _tmp3_ = g_str_has_prefix (range, "npt=");
321
 
                if (!_tmp3_) {
322
 
                        GError* _tmp4_ = NULL;
323
 
                        _tmp4_ = g_error_new (RYGEL_HTTP_SEEK_ERROR, RYGEL_HTTP_SEEK_ERROR_INVALID_RANGE, "Invalid Range '%s'", range);
324
 
                        _inner_error_ = _tmp4_;
 
488
#line 36 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
489
        range = _tmp8_;
 
490
#line 38 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
491
        _tmp9_ = range;
 
492
#line 38 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
493
        if (_tmp9_ != NULL) {
 
494
#line 495 "rygel-http-time-seek.c"
 
495
                const gchar* _tmp10_;
 
496
                gboolean _tmp11_ = FALSE;
 
497
                const gchar* _tmp14_;
 
498
                gchar* _tmp15_ = NULL;
 
499
                gchar* _tmp16_;
 
500
                gchar** _tmp17_;
 
501
                gchar** _tmp18_ = NULL;
 
502
                gboolean _tmp19_ = FALSE;
 
503
                gboolean _tmp20_ = FALSE;
 
504
                gchar** _tmp21_;
 
505
                gint _tmp21__length1;
 
506
                const gchar* _tmp22_;
 
507
                gboolean _tmp25_;
 
508
                gboolean _tmp28_;
 
509
                gchar** _tmp32_;
 
510
                gint _tmp32__length1;
 
511
                gint64 _tmp50_;
 
512
                gint64 _tmp51_;
 
513
#line 39 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
514
                _tmp10_ = range;
 
515
#line 39 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
516
                _tmp11_ = g_str_has_prefix (_tmp10_, "npt=");
 
517
#line 39 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
518
                if (!_tmp11_) {
 
519
#line 520 "rygel-http-time-seek.c"
 
520
                        const gchar* _tmp12_;
 
521
                        GError* _tmp13_;
 
522
#line 40 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
523
                        _tmp12_ = range;
 
524
#line 40 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
525
                        _tmp13_ = g_error_new (RYGEL_HTTP_SEEK_ERROR, RYGEL_HTTP_SEEK_ERROR_INVALID_RANGE, "Invalid Range '%s'", _tmp12_);
 
526
#line 40 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
527
                        _inner_error_ = _tmp13_;
 
528
#line 40 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
325
529
                        if (_inner_error_->domain == RYGEL_HTTP_SEEK_ERROR) {
 
530
#line 40 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
326
531
                                g_propagate_error (error, _inner_error_);
 
532
#line 40 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
327
533
                                range_tokens = (_vala_array_free (range_tokens, range_tokens_length1, (GDestroyNotify) g_free), NULL);
328
 
                                _g_free0 (time);
 
534
#line 40 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
329
535
                                _g_free0 (range);
 
536
#line 40 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
330
537
                                _g_object_unref0 (self);
 
538
#line 40 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
331
539
                                return NULL;
 
540
#line 541 "rygel-http-time-seek.c"
332
541
                        } else {
 
542
#line 40 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
333
543
                                range_tokens = (_vala_array_free (range_tokens, range_tokens_length1, (GDestroyNotify) g_free), NULL);
334
 
                                _g_free0 (time);
 
544
#line 40 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
335
545
                                _g_free0 (range);
 
546
#line 40 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
336
547
                                g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
 
548
#line 40 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
337
549
                                g_clear_error (&_inner_error_);
 
550
#line 40 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
338
551
                                return NULL;
 
552
#line 553 "rygel-http-time-seek.c"
339
553
                        }
340
554
                }
341
 
                _tmp5_ = string_substring (range, (glong) 4, (glong) (-1));
342
 
                _tmp6_ = _tmp5_;
343
 
                _tmp8_ = _tmp7_ = g_strsplit (_tmp6_, "-", 2);
 
555
#line 44 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
556
                _tmp14_ = range;
 
557
#line 44 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
558
                _tmp15_ = string_substring (_tmp14_, (glong) 4, (glong) (-1));
 
559
#line 44 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
560
                _tmp16_ = _tmp15_;
 
561
#line 44 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
562
                _tmp18_ = _tmp17_ = g_strsplit (_tmp16_, "-", 2);
 
563
#line 44 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
344
564
                range_tokens = (_vala_array_free (range_tokens, range_tokens_length1, (GDestroyNotify) g_free), NULL);
345
 
                range_tokens = _tmp8_;
346
 
                range_tokens_length1 = _vala_array_length (_tmp7_);
347
 
                _range_tokens_size_ = _vala_array_length (_tmp7_);
348
 
                _g_free0 (_tmp6_);
349
 
                if (range_tokens[0] == NULL) {
350
 
                        _tmp9_ = TRUE;
351
 
                } else {
352
 
                        _tmp9_ = range_tokens[1] == NULL;
353
 
                }
354
 
                if (_tmp9_) {
355
 
                        const gchar* _tmp10_ = NULL;
356
 
                        GError* _tmp11_ = NULL;
357
 
                        _tmp10_ = _ ("Invalid Range '%s'");
358
 
                        _tmp11_ = g_error_new (RYGEL_HTTP_SEEK_ERROR, RYGEL_HTTP_SEEK_ERROR_INVALID_RANGE, _tmp10_, range);
359
 
                        _inner_error_ = _tmp11_;
360
 
                        if (_inner_error_->domain == RYGEL_HTTP_SEEK_ERROR) {
361
 
                                g_propagate_error (error, _inner_error_);
362
 
                                range_tokens = (_vala_array_free (range_tokens, range_tokens_length1, (GDestroyNotify) g_free), NULL);
363
 
                                _g_free0 (time);
364
 
                                _g_free0 (range);
365
 
                                _g_object_unref0 (self);
366
 
                                return NULL;
367
 
                        } else {
368
 
                                range_tokens = (_vala_array_free (range_tokens, range_tokens_length1, (GDestroyNotify) g_free), NULL);
369
 
                                _g_free0 (time);
370
 
                                _g_free0 (range);
371
 
                                g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
372
 
                                g_clear_error (&_inner_error_);
373
 
                                return NULL;
374
 
                        }
375
 
                }
376
 
                _tmp12_ = g_strdup (range_tokens[0]);
377
 
                _g_free0 (time);
378
 
                time = _tmp12_;
379
 
                _tmp13_ = string_get (time, (glong) 0);
380
 
                _tmp14_ = g_ascii_isdigit (_tmp13_);
381
 
                if (_tmp14_) {
382
 
                        gdouble _tmp15_;
383
 
                        _tmp15_ = double_parse (time);
384
 
                        start = (gint64) (_tmp15_ * GST_SECOND);
385
 
                } else {
386
 
                        if (g_strcmp0 (time, "") != 0) {
387
 
                                const gchar* _tmp16_ = NULL;
388
 
                                GError* _tmp17_ = NULL;
389
 
                                _tmp16_ = _ ("Invalid Range '%s'");
390
 
                                _tmp17_ = g_error_new (RYGEL_HTTP_SEEK_ERROR, RYGEL_HTTP_SEEK_ERROR_INVALID_RANGE, _tmp16_, range);
391
 
                                _inner_error_ = _tmp17_;
392
 
                                if (_inner_error_->domain == RYGEL_HTTP_SEEK_ERROR) {
393
 
                                        g_propagate_error (error, _inner_error_);
394
 
                                        range_tokens = (_vala_array_free (range_tokens, range_tokens_length1, (GDestroyNotify) g_free), NULL);
395
 
                                        _g_free0 (time);
396
 
                                        _g_free0 (range);
397
 
                                        _g_object_unref0 (self);
398
 
                                        return NULL;
399
 
                                } else {
400
 
                                        range_tokens = (_vala_array_free (range_tokens, range_tokens_length1, (GDestroyNotify) g_free), NULL);
401
 
                                        _g_free0 (time);
402
 
                                        _g_free0 (range);
403
 
                                        g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
404
 
                                        g_clear_error (&_inner_error_);
405
 
                                        return NULL;
406
 
                                }
407
 
                        }
408
 
                }
409
 
                _tmp18_ = g_strdup (range_tokens[1]);
410
 
                _g_free0 (time);
411
 
                time = _tmp18_;
412
 
                _tmp19_ = string_get (time, (glong) 0);
413
 
                _tmp20_ = g_ascii_isdigit (_tmp19_);
414
 
                if (_tmp20_) {
415
 
                        gdouble _tmp21_;
416
 
                        _tmp21_ = double_parse (time);
417
 
                        stop = (gint64) (_tmp21_ * GST_SECOND);
418
 
                        if (stop < start) {
419
 
                                const gchar* _tmp22_ = NULL;
420
 
                                GError* _tmp23_ = NULL;
421
 
                                _tmp22_ = _ ("Invalid Range '%s'");
422
 
                                _tmp23_ = g_error_new (RYGEL_HTTP_SEEK_ERROR, RYGEL_HTTP_SEEK_ERROR_INVALID_RANGE, _tmp22_, range);
423
 
                                _inner_error_ = _tmp23_;
424
 
                                if (_inner_error_->domain == RYGEL_HTTP_SEEK_ERROR) {
425
 
                                        g_propagate_error (error, _inner_error_);
426
 
                                        range_tokens = (_vala_array_free (range_tokens, range_tokens_length1, (GDestroyNotify) g_free), NULL);
427
 
                                        _g_free0 (time);
428
 
                                        _g_free0 (range);
429
 
                                        _g_object_unref0 (self);
430
 
                                        return NULL;
431
 
                                } else {
432
 
                                        range_tokens = (_vala_array_free (range_tokens, range_tokens_length1, (GDestroyNotify) g_free), NULL);
433
 
                                        _g_free0 (time);
434
 
                                        _g_free0 (range);
435
 
                                        g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
436
 
                                        g_clear_error (&_inner_error_);
437
 
                                        return NULL;
438
 
                                }
439
 
                        }
440
 
                } else {
441
 
                        if (g_strcmp0 (time, "") != 0) {
442
 
                                const gchar* _tmp24_ = NULL;
443
 
                                GError* _tmp25_ = NULL;
444
 
                                _tmp24_ = _ ("Invalid Range '%s'");
445
 
                                _tmp25_ = g_error_new (RYGEL_HTTP_SEEK_ERROR, RYGEL_HTTP_SEEK_ERROR_INVALID_RANGE, _tmp24_, range);
446
 
                                _inner_error_ = _tmp25_;
447
 
                                if (_inner_error_->domain == RYGEL_HTTP_SEEK_ERROR) {
448
 
                                        g_propagate_error (error, _inner_error_);
449
 
                                        range_tokens = (_vala_array_free (range_tokens, range_tokens_length1, (GDestroyNotify) g_free), NULL);
450
 
                                        _g_free0 (time);
451
 
                                        _g_free0 (range);
452
 
                                        _g_object_unref0 (self);
453
 
                                        return NULL;
454
 
                                } else {
455
 
                                        range_tokens = (_vala_array_free (range_tokens, range_tokens_length1, (GDestroyNotify) g_free), NULL);
456
 
                                        _g_free0 (time);
457
 
                                        _g_free0 (range);
458
 
                                        g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
459
 
                                        g_clear_error (&_inner_error_);
460
 
                                        return NULL;
461
 
                                }
462
 
                        }
463
 
                }
464
 
        }
465
 
        self = (RygelHTTPTimeSeek*) rygel_http_seek_construct (object_type, request->msg, start, stop, (gint64) GST_MSECOND, duration);
 
565
#line 44 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
566
                range_tokens = _tmp18_;
 
567
#line 44 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
568
                range_tokens_length1 = _vala_array_length (_tmp17_);
 
569
#line 44 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
570
                _range_tokens_size_ = range_tokens_length1;
 
571
#line 44 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
572
                _g_free0 (_tmp16_);
 
573
#line 45 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
574
                _tmp21_ = range_tokens;
 
575
#line 45 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
576
                _tmp21__length1 = range_tokens_length1;
 
577
#line 45 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
578
                _tmp22_ = _tmp21_[0];
 
579
#line 45 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
580
                if (_tmp22_ == NULL) {
 
581
#line 45 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
582
                        _tmp20_ = TRUE;
 
583
#line 584 "rygel-http-time-seek.c"
 
584
                } else {
 
585
                        gchar** _tmp23_;
 
586
                        gint _tmp23__length1;
 
587
                        const gchar* _tmp24_;
 
588
#line 47 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
589
                        _tmp23_ = range_tokens;
 
590
#line 47 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
591
                        _tmp23__length1 = range_tokens_length1;
 
592
#line 47 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
593
                        _tmp24_ = _tmp23_[0];
 
594
#line 47 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
595
                        _tmp20_ = g_strcmp0 (_tmp24_, "") == 0;
 
596
#line 597 "rygel-http-time-seek.c"
 
597
                }
 
598
#line 45 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
599
                _tmp25_ = _tmp20_;
 
600
#line 45 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
601
                if (_tmp25_) {
 
602
#line 45 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
603
                        _tmp19_ = TRUE;
 
604
#line 605 "rygel-http-time-seek.c"
 
605
                } else {
 
606
                        gchar** _tmp26_;
 
607
                        gint _tmp26__length1;
 
608
                        const gchar* _tmp27_;
 
609
#line 48 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
610
                        _tmp26_ = range_tokens;
 
611
#line 48 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
612
                        _tmp26__length1 = range_tokens_length1;
 
613
#line 48 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
614
                        _tmp27_ = _tmp26_[1];
 
615
#line 48 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
616
                        _tmp19_ = _tmp27_ == NULL;
 
617
#line 618 "rygel-http-time-seek.c"
 
618
                }
 
619
#line 45 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
620
                _tmp28_ = _tmp19_;
 
621
#line 45 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
622
                if (_tmp28_) {
 
623
#line 624 "rygel-http-time-seek.c"
 
624
                        const gchar* _tmp29_ = NULL;
 
625
                        const gchar* _tmp30_;
 
626
                        GError* _tmp31_;
 
627
#line 49 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
628
                        _tmp29_ = _ ("Invalid Range '%s'");
 
629
#line 49 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
630
                        _tmp30_ = range;
 
631
#line 49 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
632
                        _tmp31_ = g_error_new (RYGEL_HTTP_SEEK_ERROR, RYGEL_HTTP_SEEK_ERROR_INVALID_RANGE, _tmp29_, _tmp30_);
 
633
#line 49 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
634
                        _inner_error_ = _tmp31_;
 
635
#line 49 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
636
                        if (_inner_error_->domain == RYGEL_HTTP_SEEK_ERROR) {
 
637
#line 49 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
638
                                g_propagate_error (error, _inner_error_);
 
639
#line 49 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
640
                                range_tokens = (_vala_array_free (range_tokens, range_tokens_length1, (GDestroyNotify) g_free), NULL);
 
641
#line 49 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
642
                                _g_free0 (range);
 
643
#line 49 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
644
                                _g_object_unref0 (self);
 
645
#line 49 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
646
                                return NULL;
 
647
#line 648 "rygel-http-time-seek.c"
 
648
                        } else {
 
649
#line 49 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
650
                                range_tokens = (_vala_array_free (range_tokens, range_tokens_length1, (GDestroyNotify) g_free), NULL);
 
651
#line 49 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
652
                                _g_free0 (range);
 
653
#line 49 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
654
                                g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
 
655
#line 49 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
656
                                g_clear_error (&_inner_error_);
 
657
#line 49 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
658
                                return NULL;
 
659
#line 660 "rygel-http-time-seek.c"
 
660
                        }
 
661
                }
 
662
#line 53 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
663
                _tmp32_ = range_tokens;
 
664
#line 53 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
665
                _tmp32__length1 = range_tokens_length1;
 
666
#line 667 "rygel-http-time-seek.c"
 
667
                {
 
668
                        gchar** range_token_collection = NULL;
 
669
                        gint range_token_collection_length1 = 0;
 
670
                        gint _range_token_collection_size_ = 0;
 
671
                        gint range_token_it = 0;
 
672
#line 53 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
673
                        range_token_collection = _tmp32_;
 
674
#line 53 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
675
                        range_token_collection_length1 = _tmp32__length1;
 
676
#line 53 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
677
                        for (range_token_it = 0; range_token_it < _tmp32__length1; range_token_it = range_token_it + 1) {
 
678
#line 679 "rygel-http-time-seek.c"
 
679
                                gchar* _tmp33_;
 
680
                                gchar* range_token = NULL;
 
681
#line 53 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
682
                                _tmp33_ = g_strdup (range_token_collection[range_token_it]);
 
683
#line 53 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
684
                                range_token = _tmp33_;
 
685
#line 686 "rygel-http-time-seek.c"
 
686
                                {
 
687
                                        const gchar* _tmp34_;
 
688
                                        const gchar* _tmp35_;
 
689
                                        gint _tmp36_ = 0;
 
690
                                        gboolean _tmp47_;
 
691
#line 54 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
692
                                        _tmp34_ = range_token;
 
693
#line 54 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
694
                                        if (g_strcmp0 (_tmp34_, "") == 0) {
 
695
#line 55 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
696
                                                _g_free0 (range_token);
 
697
#line 55 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
698
                                                continue;
 
699
#line 700 "rygel-http-time-seek.c"
 
700
                                        }
 
701
#line 58 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
702
                                        _tmp35_ = range_token;
 
703
#line 58 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
704
                                        _tmp36_ = string_index_of (_tmp35_, ":", 0);
 
705
#line 58 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
706
                                        if (_tmp36_ == (-1)) {
 
707
#line 708 "rygel-http-time-seek.c"
 
708
                                                const gchar* _tmp37_;
 
709
                                                gboolean _tmp38_ = FALSE;
 
710
#line 59 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
711
                                                _tmp37_ = range_token;
 
712
#line 59 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
713
                                                _tmp38_ = rygel_http_time_seek_parse_seconds (_tmp37_, &parsed_value);
 
714
#line 59 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
715
                                                if (!_tmp38_) {
 
716
#line 717 "rygel-http-time-seek.c"
 
717
                                                        const gchar* _tmp39_ = NULL;
 
718
                                                        const gchar* _tmp40_;
 
719
                                                        GError* _tmp41_;
 
720
#line 60 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
721
                                                        _tmp39_ = _ ("Invalid Range '%s'");
 
722
#line 60 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
723
                                                        _tmp40_ = range;
 
724
#line 60 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
725
                                                        _tmp41_ = g_error_new (RYGEL_HTTP_SEEK_ERROR, RYGEL_HTTP_SEEK_ERROR_INVALID_RANGE, _tmp39_, _tmp40_);
 
726
#line 60 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
727
                                                        _inner_error_ = _tmp41_;
 
728
#line 60 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
729
                                                        if (_inner_error_->domain == RYGEL_HTTP_SEEK_ERROR) {
 
730
#line 60 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
731
                                                                g_propagate_error (error, _inner_error_);
 
732
#line 60 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
733
                                                                _g_free0 (range_token);
 
734
#line 60 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
735
                                                                range_tokens = (_vala_array_free (range_tokens, range_tokens_length1, (GDestroyNotify) g_free), NULL);
 
736
#line 60 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
737
                                                                _g_free0 (range);
 
738
#line 60 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
739
                                                                _g_object_unref0 (self);
 
740
#line 60 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
741
                                                                return NULL;
 
742
#line 743 "rygel-http-time-seek.c"
 
743
                                                        } else {
 
744
#line 60 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
745
                                                                _g_free0 (range_token);
 
746
#line 60 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
747
                                                                range_tokens = (_vala_array_free (range_tokens, range_tokens_length1, (GDestroyNotify) g_free), NULL);
 
748
#line 60 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
749
                                                                _g_free0 (range);
 
750
#line 60 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
751
                                                                g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
 
752
#line 60 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
753
                                                                g_clear_error (&_inner_error_);
 
754
#line 60 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
755
                                                                return NULL;
 
756
#line 757 "rygel-http-time-seek.c"
 
757
                                                        }
 
758
                                                }
 
759
                                        } else {
 
760
                                                const gchar* _tmp42_;
 
761
                                                gboolean _tmp43_ = FALSE;
 
762
#line 65 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
763
                                                _tmp42_ = range_token;
 
764
#line 65 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
765
                                                _tmp43_ = rygel_http_time_seek_parse_time (_tmp42_, &parsed_value);
 
766
#line 65 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
767
                                                if (!_tmp43_) {
 
768
#line 769 "rygel-http-time-seek.c"
 
769
                                                        const gchar* _tmp44_ = NULL;
 
770
                                                        const gchar* _tmp45_;
 
771
                                                        GError* _tmp46_;
 
772
#line 67 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
773
                                                        _tmp44_ = _ ("Invalid Range '%s'");
 
774
#line 67 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
775
                                                        _tmp45_ = range;
 
776
#line 67 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
777
                                                        _tmp46_ = g_error_new (RYGEL_HTTP_SEEK_ERROR, RYGEL_HTTP_SEEK_ERROR_INVALID_RANGE, _tmp44_, _tmp45_);
 
778
#line 67 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
779
                                                        _inner_error_ = _tmp46_;
 
780
#line 67 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
781
                                                        if (_inner_error_->domain == RYGEL_HTTP_SEEK_ERROR) {
 
782
#line 67 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
783
                                                                g_propagate_error (error, _inner_error_);
 
784
#line 67 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
785
                                                                _g_free0 (range_token);
 
786
#line 67 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
787
                                                                range_tokens = (_vala_array_free (range_tokens, range_tokens_length1, (GDestroyNotify) g_free), NULL);
 
788
#line 67 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
789
                                                                _g_free0 (range);
 
790
#line 67 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
791
                                                                _g_object_unref0 (self);
 
792
#line 67 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
793
                                                                return NULL;
 
794
#line 795 "rygel-http-time-seek.c"
 
795
                                                        } else {
 
796
#line 67 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
797
                                                                _g_free0 (range_token);
 
798
#line 67 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
799
                                                                range_tokens = (_vala_array_free (range_tokens, range_tokens_length1, (GDestroyNotify) g_free), NULL);
 
800
#line 67 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
801
                                                                _g_free0 (range);
 
802
#line 67 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
803
                                                                g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
 
804
#line 67 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
805
                                                                g_clear_error (&_inner_error_);
 
806
#line 67 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
807
                                                                return NULL;
 
808
#line 809 "rygel-http-time-seek.c"
 
809
                                                        }
 
810
                                                }
 
811
                                        }
 
812
#line 73 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
813
                                        _tmp47_ = parsing_start;
 
814
#line 73 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
815
                                        if (_tmp47_) {
 
816
#line 817 "rygel-http-time-seek.c"
 
817
                                                gint64 _tmp48_;
 
818
#line 74 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
819
                                                parsing_start = FALSE;
 
820
#line 75 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
821
                                                _tmp48_ = parsed_value;
 
822
#line 75 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
823
                                                start = _tmp48_;
 
824
#line 825 "rygel-http-time-seek.c"
 
825
                                        } else {
 
826
                                                gint64 _tmp49_;
 
827
#line 77 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
828
                                                _tmp49_ = parsed_value;
 
829
#line 77 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
830
                                                stop = _tmp49_;
 
831
#line 832 "rygel-http-time-seek.c"
 
832
                                        }
 
833
#line 53 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
834
                                        _g_free0 (range_token);
 
835
#line 836 "rygel-http-time-seek.c"
 
836
                                }
 
837
                        }
 
838
                }
 
839
#line 81 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
840
                _tmp50_ = start;
 
841
#line 81 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
842
                _tmp51_ = stop;
 
843
#line 81 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
844
                if (_tmp50_ > _tmp51_) {
 
845
#line 846 "rygel-http-time-seek.c"
 
846
                        const gchar* _tmp52_ = NULL;
 
847
                        const gchar* _tmp53_;
 
848
                        GError* _tmp54_;
 
849
#line 82 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
850
                        _tmp52_ = _ ("Invalid Range '%s'");
 
851
#line 82 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
852
                        _tmp53_ = range;
 
853
#line 82 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
854
                        _tmp54_ = g_error_new (RYGEL_HTTP_SEEK_ERROR, RYGEL_HTTP_SEEK_ERROR_INVALID_RANGE, _tmp52_, _tmp53_);
 
855
#line 82 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
856
                        _inner_error_ = _tmp54_;
 
857
#line 82 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
858
                        if (_inner_error_->domain == RYGEL_HTTP_SEEK_ERROR) {
 
859
#line 82 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
860
                                g_propagate_error (error, _inner_error_);
 
861
#line 82 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
862
                                range_tokens = (_vala_array_free (range_tokens, range_tokens_length1, (GDestroyNotify) g_free), NULL);
 
863
#line 82 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
864
                                _g_free0 (range);
 
865
#line 82 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
866
                                _g_object_unref0 (self);
 
867
#line 82 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
868
                                return NULL;
 
869
#line 870 "rygel-http-time-seek.c"
 
870
                        } else {
 
871
#line 82 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
872
                                range_tokens = (_vala_array_free (range_tokens, range_tokens_length1, (GDestroyNotify) g_free), NULL);
 
873
#line 82 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
874
                                _g_free0 (range);
 
875
#line 82 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
876
                                g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
 
877
#line 82 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
878
                                g_clear_error (&_inner_error_);
 
879
#line 82 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
880
                                return NULL;
 
881
#line 882 "rygel-http-time-seek.c"
 
882
                        }
 
883
                }
 
884
        }
 
885
#line 88 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
886
        _tmp55_ = request;
 
887
#line 88 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
888
        _tmp56_ = _tmp55_->msg;
 
889
#line 88 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
890
        _tmp57_ = start;
 
891
#line 88 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
892
        _tmp58_ = stop;
 
893
#line 88 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
894
        _tmp59_ = duration;
 
895
#line 88 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
896
        self = (RygelHTTPTimeSeek*) rygel_http_seek_construct (object_type, _tmp56_, _tmp57_, _tmp58_, (gint64) GST_MSECOND, _tmp59_, &_inner_error_);
 
897
#line 88 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
898
        if (_inner_error_ != NULL) {
 
899
#line 88 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
900
                if (_inner_error_->domain == RYGEL_HTTP_SEEK_ERROR) {
 
901
#line 88 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
902
                        g_propagate_error (error, _inner_error_);
 
903
#line 88 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
904
                        range_tokens = (_vala_array_free (range_tokens, range_tokens_length1, (GDestroyNotify) g_free), NULL);
 
905
#line 88 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
906
                        _g_free0 (range);
 
907
#line 88 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
908
                        _g_object_unref0 (self);
 
909
#line 88 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
910
                        return NULL;
 
911
#line 912 "rygel-http-time-seek.c"
 
912
                } else {
 
913
#line 88 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
914
                        range_tokens = (_vala_array_free (range_tokens, range_tokens_length1, (GDestroyNotify) g_free), NULL);
 
915
#line 88 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
916
                        _g_free0 (range);
 
917
#line 88 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
918
                        g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
 
919
#line 88 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
920
                        g_clear_error (&_inner_error_);
 
921
#line 88 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
922
                        return NULL;
 
923
#line 924 "rygel-http-time-seek.c"
 
924
                }
 
925
        }
 
926
#line 27 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
466
927
        range_tokens = (_vala_array_free (range_tokens, range_tokens_length1, (GDestroyNotify) g_free), NULL);
467
 
        _g_free0 (time);
 
928
#line 27 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
468
929
        _g_free0 (range);
 
930
#line 27 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
469
931
        return self;
 
932
#line 933 "rygel-http-time-seek.c"
470
933
}
471
934
 
472
935
 
473
936
RygelHTTPTimeSeek* rygel_http_time_seek_new (RygelHTTPGet* request, GError** error) {
 
937
#line 27 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
474
938
        return rygel_http_time_seek_construct (RYGEL_TYPE_HTTP_TIME_SEEK, request, error);
 
939
#line 940 "rygel-http-time-seek.c"
475
940
}
476
941
 
477
942
 
479
944
        gboolean result = FALSE;
480
945
        gboolean _tmp0_ = FALSE;
481
946
        gboolean _tmp1_ = FALSE;
 
947
        RygelHTTPGet* _tmp2_;
 
948
        RygelMediaItem* _tmp3_;
 
949
        gboolean _tmp7_;
 
950
        gboolean _tmp23_;
 
951
#line 91 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
482
952
        g_return_val_if_fail (request != NULL, FALSE);
483
 
        if (RYGEL_IS_AUDIO_ITEM (request->item)) {
484
 
                RygelMediaItem* _tmp2_;
485
 
                _tmp2_ = request->item;
486
 
                _tmp1_ = (RYGEL_IS_AUDIO_ITEM (_tmp2_) ? ((RygelAudioItem*) _tmp2_) : NULL)->duration > 0;
 
953
#line 92 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
954
        _tmp2_ = request;
 
955
#line 92 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
956
        _tmp3_ = _tmp2_->item;
 
957
#line 92 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
958
        if (RYGEL_IS_AUDIO_ITEM (_tmp3_)) {
 
959
#line 960 "rygel-http-time-seek.c"
 
960
                RygelHTTPGet* _tmp4_;
 
961
                RygelMediaItem* _tmp5_;
 
962
                gint64 _tmp6_;
 
963
#line 93 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
964
                _tmp4_ = request;
 
965
#line 93 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
966
                _tmp5_ = _tmp4_->item;
 
967
#line 93 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
968
                _tmp6_ = (RYGEL_IS_AUDIO_ITEM (_tmp5_) ? ((RygelAudioItem*) _tmp5_) : NULL)->duration;
 
969
#line 93 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
970
                _tmp1_ = _tmp6_ > ((gint64) 0);
 
971
#line 972 "rygel-http-time-seek.c"
487
972
        } else {
 
973
#line 92 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
488
974
                _tmp1_ = FALSE;
 
975
#line 976 "rygel-http-time-seek.c"
489
976
        }
490
 
        if (_tmp1_) {
491
 
                gboolean _tmp3_ = FALSE;
492
 
                if (RYGEL_IS_HTTP_TRANSCODE_HANDLER (request->handler)) {
493
 
                        _tmp3_ = TRUE;
 
977
#line 92 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
978
        _tmp7_ = _tmp1_;
 
979
#line 92 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
980
        if (_tmp7_) {
 
981
#line 982 "rygel-http-time-seek.c"
 
982
                gboolean _tmp8_ = FALSE;
 
983
                RygelHTTPGet* _tmp9_;
 
984
                RygelHTTPTranscodeHandler* _tmp10_;
 
985
                gboolean _tmp22_;
 
986
#line 94 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
987
                _tmp9_ = request;
 
988
#line 94 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
989
                _tmp10_ = _tmp9_->handler;
 
990
#line 94 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
991
                if (RYGEL_IS_HTTP_TRANSCODE_HANDLER (_tmp10_)) {
 
992
#line 94 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
993
                        _tmp8_ = TRUE;
 
994
#line 995 "rygel-http-time-seek.c"
494
995
                } else {
495
 
                        gboolean _tmp4_ = FALSE;
496
 
                        gboolean _tmp5_ = FALSE;
497
 
                        if (request->thumbnail == NULL) {
498
 
                                _tmp5_ = request->subtitle == NULL;
499
 
                        } else {
500
 
                                _tmp5_ = FALSE;
501
 
                        }
502
 
                        if (_tmp5_) {
503
 
                                gboolean _tmp6_;
504
 
                                _tmp6_ = rygel_media_item_is_live_stream (request->item);
505
 
                                _tmp4_ = _tmp6_;
506
 
                        } else {
507
 
                                _tmp4_ = FALSE;
508
 
                        }
509
 
                        _tmp3_ = _tmp4_;
 
996
                        gboolean _tmp11_ = FALSE;
 
997
                        gboolean _tmp12_ = FALSE;
 
998
                        RygelHTTPGet* _tmp13_;
 
999
                        RygelThumbnail* _tmp14_;
 
1000
                        gboolean _tmp17_;
 
1001
                        gboolean _tmp21_;
 
1002
#line 95 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1003
                        _tmp13_ = request;
 
1004
#line 95 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1005
                        _tmp14_ = _tmp13_->thumbnail;
 
1006
#line 95 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1007
                        if (_tmp14_ == NULL) {
 
1008
#line 1009 "rygel-http-time-seek.c"
 
1009
                                RygelHTTPGet* _tmp15_;
 
1010
                                RygelSubtitle* _tmp16_;
 
1011
#line 96 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1012
                                _tmp15_ = request;
 
1013
#line 96 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1014
                                _tmp16_ = _tmp15_->subtitle;
 
1015
#line 96 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1016
                                _tmp12_ = _tmp16_ == NULL;
 
1017
#line 1018 "rygel-http-time-seek.c"
 
1018
                        } else {
 
1019
#line 95 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1020
                                _tmp12_ = FALSE;
 
1021
#line 1022 "rygel-http-time-seek.c"
 
1022
                        }
 
1023
#line 95 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1024
                        _tmp17_ = _tmp12_;
 
1025
#line 95 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1026
                        if (_tmp17_) {
 
1027
#line 1028 "rygel-http-time-seek.c"
 
1028
                                RygelHTTPGet* _tmp18_;
 
1029
                                RygelMediaItem* _tmp19_;
 
1030
                                gboolean _tmp20_ = FALSE;
 
1031
#line 97 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1032
                                _tmp18_ = request;
 
1033
#line 97 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1034
                                _tmp19_ = _tmp18_->item;
 
1035
#line 97 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1036
                                _tmp20_ = rygel_media_item_is_live_stream (_tmp19_);
 
1037
#line 97 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1038
                                _tmp11_ = _tmp20_;
 
1039
#line 1040 "rygel-http-time-seek.c"
 
1040
                        } else {
 
1041
#line 95 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1042
                                _tmp11_ = FALSE;
 
1043
#line 1044 "rygel-http-time-seek.c"
 
1044
                        }
 
1045
#line 95 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1046
                        _tmp21_ = _tmp11_;
 
1047
#line 95 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1048
                        _tmp8_ = _tmp21_;
 
1049
#line 1050 "rygel-http-time-seek.c"
510
1050
                }
511
 
                _tmp0_ = _tmp3_;
 
1051
#line 94 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1052
                _tmp22_ = _tmp8_;
 
1053
#line 94 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1054
                _tmp0_ = _tmp22_;
 
1055
#line 1056 "rygel-http-time-seek.c"
512
1056
        } else {
 
1057
#line 92 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
513
1058
                _tmp0_ = FALSE;
 
1059
#line 1060 "rygel-http-time-seek.c"
514
1060
        }
515
 
        result = _tmp0_;
 
1061
#line 92 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1062
        _tmp23_ = _tmp0_;
 
1063
#line 92 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1064
        result = _tmp23_;
 
1065
#line 92 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
516
1066
        return result;
 
1067
#line 1068 "rygel-http-time-seek.c"
517
1068
}
518
1069
 
519
1070
 
520
1071
gboolean rygel_http_time_seek_requested (RygelHTTPGet* request) {
521
1072
        gboolean result = FALSE;
522
 
        const gchar* _tmp0_ = NULL;
 
1073
        RygelHTTPGet* _tmp0_;
 
1074
        SoupMessage* _tmp1_;
 
1075
        SoupMessageHeaders* _tmp2_;
 
1076
        const gchar* _tmp3_ = NULL;
 
1077
#line 100 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
523
1078
        g_return_val_if_fail (request != NULL, FALSE);
524
 
        _tmp0_ = soup_message_headers_get_one (request->msg->request_headers, "TimeSeekRange.dlna.org");
525
 
        result = _tmp0_ != NULL;
 
1079
#line 101 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1080
        _tmp0_ = request;
 
1081
#line 101 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1082
        _tmp1_ = _tmp0_->msg;
 
1083
#line 101 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1084
        _tmp2_ = _tmp1_->request_headers;
 
1085
#line 101 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1086
        _tmp3_ = soup_message_headers_get_one (_tmp2_, "TimeSeekRange.dlna.org");
 
1087
#line 101 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1088
        result = _tmp3_ != NULL;
 
1089
#line 101 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
526
1090
        return result;
 
1091
#line 1092 "rygel-http-time-seek.c"
527
1092
}
528
1093
 
529
1094
 
530
1095
static void rygel_http_time_seek_real_add_response_headers (RygelHTTPSeek* base) {
531
1096
        RygelHTTPTimeSeek * self;
532
1097
        gint64 _tmp0_;
 
1098
        gint64 _tmp1_;
533
1099
        gdouble start;
534
 
        gint64 _tmp1_;
 
1100
        gint64 _tmp2_;
 
1101
        gint64 _tmp3_;
535
1102
        gdouble stop;
536
 
        gint64 _tmp2_;
 
1103
        gint64 _tmp4_;
 
1104
        gint64 _tmp5_;
537
1105
        gdouble total;
538
 
        gchar* _tmp3_ = NULL;
 
1106
        gchar* _tmp6_ = NULL;
539
1107
        gchar* start_str;
540
1108
        gint start_str_length1;
541
1109
        gint _start_str_size_;
542
 
        gchar* _tmp4_ = NULL;
 
1110
        gchar* _tmp7_ = NULL;
543
1111
        gchar* stop_str;
544
1112
        gint stop_str_length1;
545
1113
        gint _stop_str_size_;
546
 
        gchar* _tmp5_ = NULL;
 
1114
        gchar* _tmp8_ = NULL;
547
1115
        gchar* total_str;
548
1116
        gint total_str_length1;
549
1117
        gint _total_str_size_;
550
 
        const gchar* _tmp6_ = NULL;
551
 
        gchar* _tmp7_;
552
 
        gchar* _tmp8_;
553
 
        gchar* _tmp9_;
 
1118
        const gchar* _tmp9_ = NULL;
554
1119
        gchar* _tmp10_;
555
 
        const gchar* _tmp11_ = NULL;
 
1120
        gchar* _tmp11_;
556
1121
        gchar* _tmp12_;
557
1122
        gchar* _tmp13_;
558
 
        gchar* _tmp14_;
 
1123
        const gchar* _tmp14_ = NULL;
559
1124
        gchar* _tmp15_;
560
 
        const gchar* _tmp16_ = NULL;
 
1125
        gchar* _tmp16_;
561
1126
        gchar* _tmp17_;
562
1127
        gchar* _tmp18_;
 
1128
        const gchar* _tmp19_ = NULL;
 
1129
        gchar* _tmp20_;
 
1130
        gchar* _tmp21_;
563
1131
        gchar* range;
564
 
        SoupMessage* _tmp19_ = NULL;
 
1132
        SoupMessage* _tmp22_;
 
1133
        SoupMessage* _tmp23_;
 
1134
        SoupMessageHeaders* _tmp24_;
 
1135
#line 105 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
565
1136
        self = (RygelHTTPTimeSeek*) base;
 
1137
#line 107 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
566
1138
        _tmp0_ = rygel_http_seek_get_start ((RygelHTTPSeek*) self);
567
 
        start = ((gdouble) _tmp0_) / GST_SECOND;
568
 
        _tmp1_ = rygel_http_seek_get_stop ((RygelHTTPSeek*) self);
569
 
        stop = ((gdouble) _tmp1_) / GST_SECOND;
570
 
        _tmp2_ = rygel_http_seek_get_total_length ((RygelHTTPSeek*) self);
571
 
        total = ((gdouble) _tmp2_) / GST_SECOND;
572
 
        _tmp3_ = g_new0 (gchar, G_ASCII_DTOSTR_BUF_SIZE);
573
 
        start_str = _tmp3_;
 
1139
#line 107 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1140
        _tmp1_ = _tmp0_;
 
1141
#line 107 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1142
        start = ((gdouble) _tmp1_) / GST_SECOND;
 
1143
#line 108 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1144
        _tmp2_ = rygel_http_seek_get_stop ((RygelHTTPSeek*) self);
 
1145
#line 108 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1146
        _tmp3_ = _tmp2_;
 
1147
#line 108 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1148
        stop = ((gdouble) _tmp3_) / GST_SECOND;
 
1149
#line 109 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1150
        _tmp4_ = rygel_http_seek_get_total_length ((RygelHTTPSeek*) self);
 
1151
#line 109 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1152
        _tmp5_ = _tmp4_;
 
1153
#line 109 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1154
        total = ((gdouble) _tmp5_) / GST_SECOND;
 
1155
#line 111 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1156
        _tmp6_ = g_new0 (gchar, G_ASCII_DTOSTR_BUF_SIZE);
 
1157
#line 111 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1158
        start_str = _tmp6_;
 
1159
#line 111 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
574
1160
        start_str_length1 = G_ASCII_DTOSTR_BUF_SIZE;
575
 
        _start_str_size_ = G_ASCII_DTOSTR_BUF_SIZE;
576
 
        _tmp4_ = g_new0 (gchar, G_ASCII_DTOSTR_BUF_SIZE);
577
 
        stop_str = _tmp4_;
 
1161
#line 111 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1162
        _start_str_size_ = start_str_length1;
 
1163
#line 112 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1164
        _tmp7_ = g_new0 (gchar, G_ASCII_DTOSTR_BUF_SIZE);
 
1165
#line 112 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1166
        stop_str = _tmp7_;
 
1167
#line 112 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
578
1168
        stop_str_length1 = G_ASCII_DTOSTR_BUF_SIZE;
579
 
        _stop_str_size_ = G_ASCII_DTOSTR_BUF_SIZE;
580
 
        _tmp5_ = g_new0 (gchar, G_ASCII_DTOSTR_BUF_SIZE);
581
 
        total_str = _tmp5_;
 
1169
#line 112 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1170
        _stop_str_size_ = stop_str_length1;
 
1171
#line 113 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1172
        _tmp8_ = g_new0 (gchar, G_ASCII_DTOSTR_BUF_SIZE);
 
1173
#line 113 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1174
        total_str = _tmp8_;
 
1175
#line 113 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
582
1176
        total_str_length1 = G_ASCII_DTOSTR_BUF_SIZE;
583
 
        _total_str_size_ = G_ASCII_DTOSTR_BUF_SIZE;
584
 
        _tmp6_ = g_ascii_formatd (start_str, start_str_length1, "%.3f", start);
585
 
        _tmp7_ = g_strconcat ("npt=", _tmp6_, NULL);
586
 
        _tmp8_ = _tmp7_;
587
 
        _tmp9_ = g_strconcat (_tmp8_, "-", NULL);
588
 
        _tmp10_ = _tmp9_;
589
 
        _tmp11_ = g_ascii_formatd (stop_str, stop_str_length1, "%.3f", stop);
590
 
        _tmp12_ = g_strconcat (_tmp10_, _tmp11_, NULL);
 
1177
#line 113 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1178
        _total_str_size_ = total_str_length1;
 
1179
#line 115 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1180
        _tmp9_ = g_ascii_formatd (start_str, start_str_length1, "%.3f", start);
 
1181
#line 115 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1182
        _tmp10_ = g_strconcat ("npt=", _tmp9_, NULL);
 
1183
#line 115 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1184
        _tmp11_ = _tmp10_;
 
1185
#line 115 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1186
        _tmp12_ = g_strconcat (_tmp11_, "-", NULL);
 
1187
#line 115 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
591
1188
        _tmp13_ = _tmp12_;
592
 
        _tmp14_ = g_strconcat (_tmp13_, "/", NULL);
593
 
        _tmp15_ = _tmp14_;
594
 
        _tmp16_ = g_ascii_formatd (total_str, total_str_length1, "%.3f", total);
595
 
        _tmp17_ = g_strconcat (_tmp15_, _tmp16_, NULL);
 
1189
#line 115 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1190
        _tmp14_ = g_ascii_formatd (stop_str, stop_str_length1, "%.3f", stop);
 
1191
#line 115 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1192
        _tmp15_ = g_strconcat (_tmp13_, _tmp14_, NULL);
 
1193
#line 115 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1194
        _tmp16_ = _tmp15_;
 
1195
#line 115 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1196
        _tmp17_ = g_strconcat (_tmp16_, "/", NULL);
 
1197
#line 115 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
596
1198
        _tmp18_ = _tmp17_;
597
 
        _g_free0 (_tmp15_);
 
1199
#line 115 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1200
        _tmp19_ = g_ascii_formatd (total_str, total_str_length1, "%.3f", total);
 
1201
#line 115 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1202
        _tmp20_ = g_strconcat (_tmp18_, _tmp19_, NULL);
 
1203
#line 115 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1204
        _tmp21_ = _tmp20_;
 
1205
#line 115 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1206
        _g_free0 (_tmp18_);
 
1207
#line 115 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1208
        _g_free0 (_tmp16_);
 
1209
#line 115 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
598
1210
        _g_free0 (_tmp13_);
599
 
        _g_free0 (_tmp10_);
600
 
        _g_free0 (_tmp8_);
601
 
        range = _tmp18_;
602
 
        _tmp19_ = rygel_http_seek_get_msg ((RygelHTTPSeek*) self);
603
 
        soup_message_headers_append (_tmp19_->response_headers, "TimeSeekRange.dlna.org", range);
 
1211
#line 115 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1212
        _g_free0 (_tmp11_);
 
1213
#line 115 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1214
        range = _tmp21_;
 
1215
#line 119 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1216
        _tmp22_ = rygel_http_seek_get_msg ((RygelHTTPSeek*) self);
 
1217
#line 119 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1218
        _tmp23_ = _tmp22_;
 
1219
#line 119 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1220
        _tmp24_ = _tmp23_->response_headers;
 
1221
#line 119 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1222
        soup_message_headers_append (_tmp24_, "TimeSeekRange.dlna.org", range);
 
1223
#line 105 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
604
1224
        _g_free0 (range);
 
1225
#line 105 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
605
1226
        total_str = (g_free (total_str), NULL);
 
1227
#line 105 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
606
1228
        stop_str = (g_free (stop_str), NULL);
 
1229
#line 105 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
607
1230
        start_str = (g_free (start_str), NULL);
 
1231
#line 1232 "rygel-http-time-seek.c"
 
1232
}
 
1233
 
 
1234
 
 
1235
static gchar string_get (const gchar* self, glong index) {
 
1236
        gchar result = '\0';
 
1237
        glong _tmp0_;
 
1238
        gchar _tmp1_;
 
1239
#line 1122 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
1240
        g_return_val_if_fail (self != NULL, '\0');
 
1241
#line 1123 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
1242
        _tmp0_ = index;
 
1243
#line 1123 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
1244
        _tmp1_ = ((gchar*) self)[_tmp0_];
 
1245
#line 1123 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
1246
        result = _tmp1_;
 
1247
#line 1123 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
1248
        return result;
 
1249
#line 1250 "rygel-http-time-seek.c"
 
1250
}
 
1251
 
 
1252
 
 
1253
static gdouble double_parse (const gchar* str) {
 
1254
        gdouble result = 0.0;
 
1255
        const gchar* _tmp0_;
 
1256
        gdouble _tmp1_ = 0.0;
 
1257
#line 773 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
1258
        g_return_val_if_fail (str != NULL, 0.0);
 
1259
#line 774 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
1260
        _tmp0_ = str;
 
1261
#line 774 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
1262
        _tmp1_ = g_ascii_strtod (_tmp0_, NULL);
 
1263
#line 774 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
1264
        result = _tmp1_;
 
1265
#line 774 "/opt/gnome2/share/vala-0.14/vapi/glib-2.0.vapi"
 
1266
        return result;
 
1267
#line 1268 "rygel-http-time-seek.c"
 
1268
}
 
1269
 
 
1270
 
 
1271
static gboolean rygel_http_time_seek_parse_seconds (const gchar* range_token, gint64* value) {
 
1272
        gboolean result = FALSE;
 
1273
        const gchar* _tmp0_;
 
1274
        gchar _tmp1_ = '\0';
 
1275
        gboolean _tmp2_ = FALSE;
 
1276
#line 123 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1277
        g_return_val_if_fail (range_token != NULL, FALSE);
 
1278
#line 125 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1279
        _tmp0_ = range_token;
 
1280
#line 125 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1281
        _tmp1_ = string_get (_tmp0_, (glong) 0);
 
1282
#line 125 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1283
        _tmp2_ = g_ascii_isdigit (_tmp1_);
 
1284
#line 125 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1285
        if (_tmp2_) {
 
1286
#line 1287 "rygel-http-time-seek.c"
 
1287
                const gchar* _tmp3_;
 
1288
                gdouble _tmp4_ = 0.0;
 
1289
#line 126 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1290
                _tmp3_ = range_token;
 
1291
#line 126 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1292
                _tmp4_ = double_parse (_tmp3_);
 
1293
#line 126 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1294
                *value = (gint64) (_tmp4_ * GST_SECOND);
 
1295
#line 1296 "rygel-http-time-seek.c"
 
1296
        } else {
 
1297
#line 128 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1298
                result = FALSE;
 
1299
#line 128 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1300
                return result;
 
1301
#line 1302 "rygel-http-time-seek.c"
 
1302
        }
 
1303
#line 130 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1304
        result = TRUE;
 
1305
#line 130 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1306
        return result;
 
1307
#line 1308 "rygel-http-time-seek.c"
 
1308
}
 
1309
 
 
1310
 
 
1311
static gboolean rygel_http_time_seek_parse_time (const gchar* range_token, gint64* value) {
 
1312
        gboolean result = FALSE;
 
1313
        gint64 seconds_sum;
 
1314
        gint time_factor;
 
1315
        gchar** time_tokens = NULL;
 
1316
        gint time_tokens_length1 = 0;
 
1317
        gint _time_tokens_size_ = 0;
 
1318
        const gchar* _tmp0_;
 
1319
        gchar** _tmp1_;
 
1320
        gchar** _tmp2_ = NULL;
 
1321
        gboolean _tmp3_ = FALSE;
 
1322
        gboolean _tmp4_ = FALSE;
 
1323
        gchar** _tmp5_;
 
1324
        gint _tmp5__length1;
 
1325
        const gchar* _tmp6_;
 
1326
        gboolean _tmp9_;
 
1327
        gboolean _tmp12_;
 
1328
        gchar** _tmp13_;
 
1329
        gint _tmp13__length1;
 
1330
        gint64 _tmp23_;
 
1331
#line 134 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1332
        g_return_val_if_fail (range_token != NULL, FALSE);
 
1333
#line 136 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1334
        seconds_sum = (gint64) 0;
 
1335
#line 137 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1336
        time_factor = 0;
 
1337
#line 140 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1338
        seconds_sum = (gint64) 0;
 
1339
#line 141 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1340
        time_factor = 3600;
 
1341
#line 143 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1342
        _tmp0_ = range_token;
 
1343
#line 143 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1344
        _tmp2_ = _tmp1_ = g_strsplit (_tmp0_, ":", 3);
 
1345
#line 143 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1346
        time_tokens = (_vala_array_free (time_tokens, time_tokens_length1, (GDestroyNotify) g_free), NULL);
 
1347
#line 143 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1348
        time_tokens = _tmp2_;
 
1349
#line 143 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1350
        time_tokens_length1 = _vala_array_length (_tmp1_);
 
1351
#line 143 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1352
        _time_tokens_size_ = time_tokens_length1;
 
1353
#line 144 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1354
        _tmp5_ = time_tokens;
 
1355
#line 144 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1356
        _tmp5__length1 = time_tokens_length1;
 
1357
#line 144 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1358
        _tmp6_ = _tmp5_[0];
 
1359
#line 144 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1360
        if (_tmp6_ == NULL) {
 
1361
#line 144 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1362
                _tmp4_ = TRUE;
 
1363
#line 1364 "rygel-http-time-seek.c"
 
1364
        } else {
 
1365
                gchar** _tmp7_;
 
1366
                gint _tmp7__length1;
 
1367
                const gchar* _tmp8_;
 
1368
#line 145 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1369
                _tmp7_ = time_tokens;
 
1370
#line 145 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1371
                _tmp7__length1 = time_tokens_length1;
 
1372
#line 145 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1373
                _tmp8_ = _tmp7_[1];
 
1374
#line 145 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1375
                _tmp4_ = _tmp8_ == NULL;
 
1376
#line 1377 "rygel-http-time-seek.c"
 
1377
        }
 
1378
#line 144 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1379
        _tmp9_ = _tmp4_;
 
1380
#line 144 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1381
        if (_tmp9_) {
 
1382
#line 144 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1383
                _tmp3_ = TRUE;
 
1384
#line 1385 "rygel-http-time-seek.c"
 
1385
        } else {
 
1386
                gchar** _tmp10_;
 
1387
                gint _tmp10__length1;
 
1388
                const gchar* _tmp11_;
 
1389
#line 146 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1390
                _tmp10_ = time_tokens;
 
1391
#line 146 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1392
                _tmp10__length1 = time_tokens_length1;
 
1393
#line 146 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1394
                _tmp11_ = _tmp10_[2];
 
1395
#line 146 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1396
                _tmp3_ = _tmp11_ == NULL;
 
1397
#line 1398 "rygel-http-time-seek.c"
 
1398
        }
 
1399
#line 144 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1400
        _tmp12_ = _tmp3_;
 
1401
#line 144 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1402
        if (_tmp12_) {
 
1403
#line 147 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1404
                result = FALSE;
 
1405
#line 147 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1406
                time_tokens = (_vala_array_free (time_tokens, time_tokens_length1, (GDestroyNotify) g_free), NULL);
 
1407
#line 147 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1408
                return result;
 
1409
#line 1410 "rygel-http-time-seek.c"
 
1410
        }
 
1411
#line 150 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1412
        _tmp13_ = time_tokens;
 
1413
#line 150 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1414
        _tmp13__length1 = time_tokens_length1;
 
1415
#line 1416 "rygel-http-time-seek.c"
 
1416
        {
 
1417
                gchar** time_collection = NULL;
 
1418
                gint time_collection_length1 = 0;
 
1419
                gint _time_collection_size_ = 0;
 
1420
                gint time_it = 0;
 
1421
#line 150 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1422
                time_collection = _tmp13_;
 
1423
#line 150 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1424
                time_collection_length1 = _tmp13__length1;
 
1425
#line 150 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1426
                for (time_it = 0; time_it < _tmp13__length1; time_it = time_it + 1) {
 
1427
#line 1428 "rygel-http-time-seek.c"
 
1428
                        gchar* _tmp14_;
 
1429
                        gchar* time = NULL;
 
1430
#line 150 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1431
                        _tmp14_ = g_strdup (time_collection[time_it]);
 
1432
#line 150 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1433
                        time = _tmp14_;
 
1434
#line 1435 "rygel-http-time-seek.c"
 
1435
                        {
 
1436
                                const gchar* _tmp15_;
 
1437
                                gchar _tmp16_ = '\0';
 
1438
                                gboolean _tmp17_ = FALSE;
 
1439
                                gint _tmp22_;
 
1440
#line 151 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1441
                                _tmp15_ = time;
 
1442
#line 151 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1443
                                _tmp16_ = string_get (_tmp15_, (glong) 0);
 
1444
#line 151 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1445
                                _tmp17_ = g_ascii_isdigit (_tmp16_);
 
1446
#line 151 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1447
                                if (_tmp17_) {
 
1448
#line 1449 "rygel-http-time-seek.c"
 
1449
                                        gint64 _tmp18_;
 
1450
                                        const gchar* _tmp19_;
 
1451
                                        gdouble _tmp20_ = 0.0;
 
1452
                                        gint _tmp21_;
 
1453
#line 152 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1454
                                        _tmp18_ = seconds_sum;
 
1455
#line 152 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1456
                                        _tmp19_ = time;
 
1457
#line 152 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1458
                                        _tmp20_ = double_parse (_tmp19_);
 
1459
#line 152 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1460
                                        _tmp21_ = time_factor;
 
1461
#line 152 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1462
                                        seconds_sum = _tmp18_ + ((gint64) ((_tmp20_ * GST_SECOND) * _tmp21_));
 
1463
#line 1464 "rygel-http-time-seek.c"
 
1464
                                } else {
 
1465
#line 155 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1466
                                        result = FALSE;
 
1467
#line 155 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1468
                                        _g_free0 (time);
 
1469
#line 155 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1470
                                        time_tokens = (_vala_array_free (time_tokens, time_tokens_length1, (GDestroyNotify) g_free), NULL);
 
1471
#line 155 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1472
                                        return result;
 
1473
#line 1474 "rygel-http-time-seek.c"
 
1474
                                }
 
1475
#line 157 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1476
                                _tmp22_ = time_factor;
 
1477
#line 157 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1478
                                time_factor = _tmp22_ / 60;
 
1479
#line 150 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1480
                                _g_free0 (time);
 
1481
#line 1482 "rygel-http-time-seek.c"
 
1482
                        }
 
1483
                }
 
1484
        }
 
1485
#line 159 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1486
        _tmp23_ = seconds_sum;
 
1487
#line 159 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1488
        *value = _tmp23_;
 
1489
#line 161 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1490
        result = TRUE;
 
1491
#line 161 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1492
        time_tokens = (_vala_array_free (time_tokens, time_tokens_length1, (GDestroyNotify) g_free), NULL);
 
1493
#line 161 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
 
1494
        return result;
 
1495
#line 1496 "rygel-http-time-seek.c"
608
1496
}
609
1497
 
610
1498
 
611
1499
static void rygel_http_time_seek_class_init (RygelHTTPTimeSeekClass * klass) {
 
1500
#line 26 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
612
1501
        rygel_http_time_seek_parent_class = g_type_class_peek_parent (klass);
 
1502
#line 26 "/home/jens/Source/rygel/tests/rygel-http-time-seek.vala"
613
1503
        RYGEL_HTTP_SEEK_CLASS (klass)->add_response_headers = rygel_http_time_seek_real_add_response_headers;
 
1504
#line 1505 "rygel-http-time-seek.c"
614
1505
}
615
1506
 
616
1507