Skip to content

Commit

Permalink
Fix padding of index 0 for object type variable
Browse files Browse the repository at this point in the history
If object of type Variable return true bitsize
of subindex 0.

fixes #166
  • Loading branch information
Andreas Karlsson committed Feb 5, 2024
1 parent 3fe4511 commit 9525469
Showing 1 changed file with 5 additions and 2 deletions.
7 changes: 5 additions & 2 deletions soes/esc_coe.c
Original file line number Diff line number Diff line change
Expand Up @@ -556,8 +556,11 @@ static uint32_t complete_access_subindex_loop(const _objd *objd,
}
}

/* Subindex 0 is padded to 16 bit */
size += (nsub == 0) ? 16 : bitlen;
/* Subindex 0 is padded to 16 bit if not object type VARIABLE.
* For VARIABLE use true bitsize.
*/
size +=
((nsub == 0) && (SDOobjects[nidx].objtype != OTYPE_VAR)) ? 16 : bitlen;
nsub++;

if ((max_bytes > 0) && (BITS2BYTES(size) >= max_bytes))
Expand Down

0 comments on commit 9525469

Please sign in to comment.