Fixed ISP mode in the AVRISP programmer project.
[pub/lufa.git] / Projects / AVRISP / Lib / V2ProtocolParams.c
index eacff03..1056335 100644 (file)
@@ -131,7 +131,7 @@ uint8_t V2Params_GetParameterValue(const uint8_t ParamID)
 {\r
        ParameterItem_t* ParamInfo = V2Params_GetParamFromTable(ParamID);\r
        \r
-       if ((ParamInfo == NULL) || !(ParamInfo->ParamPrivileges & PARAM_PRIV_READ))\r
+       if (ParamInfo == NULL)\r
          return 0;\r
        \r
        return ParamInfo->ParamValue;\r
@@ -148,7 +148,7 @@ void V2Params_SetParameterValue(const uint8_t ParamID, const uint8_t Value)
 {\r
        ParameterItem_t* ParamInfo = V2Params_GetParamFromTable(ParamID);\r
 \r
-       if ((ParamInfo == NULL) || !(ParamInfo->ParamPrivileges & PARAM_PRIV_WRITE))\r
+       if (ParamInfo == NULL)\r
          return;\r
 \r
        ParamInfo->ParamValue = Value;\r
@@ -167,11 +167,15 @@ void V2Params_SetParameterValue(const uint8_t ParamID, const uint8_t Value)
  */\r
 static ParameterItem_t* V2Params_GetParamFromTable(const uint8_t ParamID)\r
 {\r
+       ParameterItem_t* CurrTableItem = ParameterTable;\r
+\r
        /* Find the parameter in the parameter table if present */\r
        for (uint8_t TableIndex = 0; TableIndex < (sizeof(ParameterTable) / sizeof(ParameterTable[0])); TableIndex++)\r
        {\r
-               if (ParamID == ParameterTable[TableIndex].ParamID)\r
-                 return &ParameterTable[TableIndex];\r
+               if (ParamID == CurrTableItem->ParamID)\r
+                 return CurrTableItem;\r
+               \r
+               CurrTableItem++;\r
        }\r
 \r
        return NULL;\r