mirror of
https://github.com/VDR4Arch/vdr.git
synced 2023-10-10 13:36:52 +02:00
Making sure the OSD reports oeWrongAlignment errors before any oeAreasOverlap error
This commit is contained in:
parent
d32f000861
commit
35724f07bd
@ -860,6 +860,8 @@ Reinhard Nissl <rnissl@gmx.de>
|
|||||||
for adding cDevice::Flush() to make sure that all data in the video card's buffers
|
for adding cDevice::Flush() to make sure that all data in the video card's buffers
|
||||||
has been processed
|
has been processed
|
||||||
for reporting a bug in checking the last area for misalignment in cOsd::CanHandleAreas()
|
for reporting a bug in checking the last area for misalignment in cOsd::CanHandleAreas()
|
||||||
|
for suggesting to make sure the OSD reports oeWrongAlignment errors before any
|
||||||
|
oeAreasOverlap error
|
||||||
|
|
||||||
Richard Robson <richard_robson@beeb.net>
|
Richard Robson <richard_robson@beeb.net>
|
||||||
for reporting freezing replay if a timer starts while in Transfer Mode from the
|
for reporting freezing replay if a timer starts while in Transfer Mode from the
|
||||||
|
2
HISTORY
2
HISTORY
@ -2952,3 +2952,5 @@ Video Disk Recorder Revision History
|
|||||||
- Fixed handling error case '-1' when polling section filters (thanks to Marco
|
- Fixed handling error case '-1' when polling section filters (thanks to Marco
|
||||||
Schlüßler).
|
Schlüßler).
|
||||||
- Fixed handling error case '-1' when polling CAM connections.
|
- Fixed handling error case '-1' when polling CAM connections.
|
||||||
|
- Making sure the OSD reports oeWrongAlignment errors before any oeAreasOverlap
|
||||||
|
error (suggested by Reinhard Nissl).
|
||||||
|
11
osd.c
11
osd.c
@ -4,7 +4,7 @@
|
|||||||
* See the main source file 'vdr.c' for copyright information and
|
* See the main source file 'vdr.c' for copyright information and
|
||||||
* how to reach the author.
|
* how to reach the author.
|
||||||
*
|
*
|
||||||
* $Id: osd.c 1.56 2004/07/17 13:39:30 kls Exp $
|
* $Id: osd.c 1.57 2004/07/18 09:23:03 kls Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "osd.h"
|
#include "osd.h"
|
||||||
@ -602,15 +602,18 @@ cBitmap *cOsd::GetBitmap(int Area)
|
|||||||
|
|
||||||
eOsdError cOsd::CanHandleAreas(const tArea *Areas, int NumAreas)
|
eOsdError cOsd::CanHandleAreas(const tArea *Areas, int NumAreas)
|
||||||
{
|
{
|
||||||
|
eOsdError Result = oeOk;
|
||||||
for (int i = 0; i < NumAreas; i++) {
|
for (int i = 0; i < NumAreas; i++) {
|
||||||
if (Areas[i].x1 > Areas[i].x2 || Areas[i].y1 > Areas[i].y2 || Areas[i].x1 < 0 || Areas[i].y1 < 0)
|
if (Areas[i].x1 > Areas[i].x2 || Areas[i].y1 > Areas[i].y2 || Areas[i].x1 < 0 || Areas[i].y1 < 0)
|
||||||
return oeWrongAlignment;
|
return oeWrongAlignment;
|
||||||
for (int j = i + 1; j < NumAreas; j++) {
|
for (int j = i + 1; j < NumAreas; j++) {
|
||||||
if (Areas[i].Intersects(Areas[j]))
|
if (Areas[i].Intersects(Areas[j])) {
|
||||||
return oeAreasOverlap;
|
Result = oeAreasOverlap;
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return oeOk;
|
return Result;
|
||||||
}
|
}
|
||||||
|
|
||||||
eOsdError cOsd::SetAreas(const tArea *Areas, int NumAreas)
|
eOsdError cOsd::SetAreas(const tArea *Areas, int NumAreas)
|
||||||
|
Loading…
Reference in New Issue
Block a user