aboutsummaryrefslogtreecommitdiff
path: root/lib/gdi
diff options
context:
space:
mode:
authorFelix Domke <tmbinc@elitedvb.net>2007-12-16 20:52:49 +0000
committerFelix Domke <tmbinc@elitedvb.net>2007-12-16 20:52:49 +0000
commit6b372ea46f026b42d00192b4fcfcac42d2f19e8a (patch)
treedbb8cef359163d2cf70338af7b1a17da48e76e4f /lib/gdi
parent1a90a798f73d41791c6c9589c524a375c0ec1305 (diff)
downloadenigma2-6b372ea46f026b42d00192b4fcfcac42d2f19e8a.tar.gz
enigma2-6b372ea46f026b42d00192b4fcfcac42d2f19e8a.zip
patch by Pieter Grimmerink: properly initialize and check for LCD fd
Diffstat (limited to 'lib/gdi')
-rw-r--r--lib/gdi/lcd.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/lib/gdi/lcd.cpp b/lib/gdi/lcd.cpp
index 8f8cd065..ac273c61 100644
--- a/lib/gdi/lcd.cpp
+++ b/lib/gdi/lcd.cpp
@@ -16,6 +16,7 @@ eDBoxLCD *eDBoxLCD::instance;
eLCD::eLCD(eSize size): res(size)
{
+ lcdfd = -1;
locked=0;
_buffer=new unsigned char[res.height()*res.width()];
memset(_buffer, 0, res.height()*res.width());
@@ -111,10 +112,10 @@ int eDBoxLCD::setLCDBrightness(int brightness)
eDBoxLCD::~eDBoxLCD()
{
- if (lcdfd>0)
+ if (lcdfd>=0)
{
close(lcdfd);
- lcdfd=0;
+ lcdfd=-1;
}
}
@@ -141,7 +142,7 @@ void eDBoxLCD::update()
raw[y*132+x]=(pix^inverted);
}
}
- if (lcdfd>0)
+ if (lcdfd >= 0)
write(lcdfd, raw, 132*8);
} else
{
@@ -153,7 +154,7 @@ void eDBoxLCD::update()
for (x=0; x<128 / 2; x++)
raw[y*64+x] = (_buffer[y*132 + x * 2 + 2] & 0xF0) |(_buffer[y*132 + x * 2 + 1 + 2] >> 4);
}
- if (lcdfd > 0)
+ if (lcdfd >= 0)
write(lcdfd, raw, 64*64);
}
}