blob: a8dcc822c63c25e0fc141e7a56abbf812fa53bf1 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
--- femon.c_orig 2008-01-20 03:20:00.000000000 +0100
+++ femon.c 2010-06-05 01:30:33.000000000 +0200
@@ -134,18 +134,23 @@
bool cPluginFemon::Service(const char *Id, void *Data)
{
- if ((strcmp(Id,"FemonService-v1.0") == 0) && Data) {
- FemonService_v1_0 *data = (FemonService_v1_0*)Data;
- int ndx = cDevice::ActualDevice()->CardIndex();
- data->fe_name = getFrontendName(ndx);
- data->fe_status = getFrontendStatus(ndx);
- data->fe_snr = getSNR(ndx);
- data->fe_signal = getSignal(ndx);
- data->fe_ber = getBER(ndx);
- data->fe_unc = getUNC(ndx);
- data->video_bitrate = cFemonOsd::Instance() ? cFemonOsd::Instance()->GetVideoBitrate() : 0.0;
- data->audio_bitrate = cFemonOsd::Instance() ? cFemonOsd::Instance()->GetAudioBitrate() : 0.0;
- data->dolby_bitrate = cFemonOsd::Instance() ? cFemonOsd::Instance()->GetDolbyBitrate() : 0.0;
+ if (strcmp(Id,"FemonService-v1.0") == 0) {
+ if (Data) {
+ FemonService_v1_0 *data = (FemonService_v1_0*)Data;
+ if (! cDevice::ActualDevice() )
+ return false;
+
+ int ndx = cDevice::ActualDevice()->CardIndex();
+ data->fe_name = getFrontendName(ndx);
+ data->fe_status = getFrontendStatus(ndx);
+ data->fe_snr = getSNR(ndx);
+ data->fe_signal = getSignal(ndx);
+ data->fe_ber = getBER(ndx);
+ data->fe_unc = getUNC(ndx);
+ data->video_bitrate = cFemonOsd::Instance() ? cFemonOsd::Instance()->GetVideoBitrate() : 0.0;
+ data->audio_bitrate = cFemonOsd::Instance() ? cFemonOsd::Instance()->GetAudioBitrate() : 0.0;
+ data->dolby_bitrate = cFemonOsd::Instance() ? cFemonOsd::Instance()->GetDolbyBitrate() : 0.0;
+ }
return true;
}
|