Browse Source

Merge branch 'master' of git@pixhawk.ethz.ch:qgroundcontrol into checkRemote

QGC4.4
Mariano Lizarraga 15 years ago
parent
commit
4e1acc5e29
  1. 4
      src/comm/MAVLinkXMLParser.cc
  2. 3
      src/uas/UAS.cc

4
src/comm/MAVLinkXMLParser.cc

@ -258,7 +258,7 @@ bool MAVLinkXMLParser::generate() @@ -258,7 +258,7 @@ bool MAVLinkXMLParser::generate()
packLines += QString("\ti += put_%1_by_index(%2, %3, i, msg->payload); //%4\n").arg(arrayType, fieldName, QString::number(arrayLength), e2.text());
// Add decode function for this type
decodeLines += QString("\tmavlink_msg_%1_get_%2(msg, %1->%2);\n").arg(messageName, fieldName);
arrayDefines += QString("#define MAVLINK_MSG_%1_FIELD_%2_LEN %3").arg(messageName.toUpper(), fieldName.toUpper(), QString::number(arrayLength));
arrayDefines += QString("#define MAVLINK_MSG_%1_FIELD_%2_LEN %3\n").arg(messageName.toUpper(), fieldName.toUpper(), QString::number(arrayLength));
}
else if (fieldType.startsWith("string"))
{
@ -273,7 +273,7 @@ bool MAVLinkXMLParser::generate() @@ -273,7 +273,7 @@ bool MAVLinkXMLParser::generate()
packLines += QString("\ti += put_%1_by_index(%2, %3, i, msg->payload); //%4\n").arg(arrayType, fieldName, QString::number(arrayLength), e2.text());
// Add decode function for this type
decodeLines += QString("\tmavlink_msg_%1_get_%2(msg, %1->%2);\n").arg(messageName, fieldName);
arrayDefines += QString("#define MAVLINK_MSG_%1_FIELD_%2_LEN %3").arg(messageName.toUpper(), fieldName.toUpper(), QString::number(arrayLength));
arrayDefines += QString("#define MAVLINK_MSG_%1_FIELD_%2_LEN %3\n").arg(messageName.toUpper(), fieldName.toUpper(), QString::number(arrayLength));
}
else
// Handle simple types like integers and floats

3
src/uas/UAS.cc

@ -948,13 +948,12 @@ void UAS::setParameter(int component, QString id, float value) @@ -948,13 +948,12 @@ void UAS::setParameter(int component, QString id, float value)
p.target_component = (uint8_t)component;
// Copy string into buffer, ensuring not to exceed the buffer size
char* s = (char*)id.toStdString().c_str();
for (unsigned int i = 0; i < sizeof(p.param_id); i++)
{
// String characters
if ((int)i < id.length() && i < (sizeof(p.param_id) - 1))
{
p.param_id[i] = s[i];
p.param_id[i] = id.toAscii()[i];
}
// Null termination at end of string or end of buffer
else if ((int)i == id.length() || i == (sizeof(p.param_id) - 1))

Loading…
Cancel
Save