added sub-category check

This commit is contained in:
strawmanbobi
2020-03-08 19:46:19 +08:00
parent 68c1ff31a3
commit cae3ff8785
2 changed files with 18 additions and 6 deletions

View File

@@ -31,9 +31,6 @@ extern "C"
#define IR_TYPE_STATUS 0
#define IR_TYPE_COMMANDS 1
#define SUB_CATEGORY_QUATERNARY 0
#define SUB_CATEGORY_HEXADECIMAL 1
// remote control key definition
#define KEY_TV_POWER 0
#define KEY_TV_MUTE 1
@@ -199,7 +196,8 @@ extern "C"
#define STANDARD_KEY_COUNT 14
#define CHANNEL_KEY_COUNT 10
typedef enum {
typedef enum
{
REMOTE_CATEGORY_NONE = 0,
REMOTE_CATEGORY_AC = 1,
REMOTE_CATEGORY_TV = 2,
@@ -218,6 +216,14 @@ typedef enum {
REMOTE_CATEGORY_MAX = 64,
} t_remote_category;
typedef enum
{
SUB_CATEGORY_QUATERNARY = 0,
SUB_CATEGORY_HEXADECIMAL = 1,
SUB_CATEGORY_NEXT = 2,
SUB_CATEGORY_MAX = 7,
} t_remote_sub_category;
/**
* function get_lib_version
*

View File

@@ -109,12 +109,18 @@ INT8 ir_file_open(const UINT8 category, const UINT8 sub_category, const char* fi
if (category < REMOTE_CATEGORY_AC ||
category >= REMOTE_CATEGORY_NEXT)
{
ir_printf("wrong remote category\n");
ir_printf("wrong remote category : %d\n", category);
return IR_DECODE_FAILED;
}
remote_category = category;
if (sub_category < SUB_CATEGORY_QUATERNARY ||
sub_category >= SUB_CATEGORY_NEXT)
{
ir_printf("wrong remote sub category : %d\n", sub_category);
return IR_DECODE_FAILED;
}
if (category == REMOTE_CATEGORY_AC)
{
ir_binary_type = IR_TYPE_STATUS;