summaryrefslogtreecommitdiffstats
path: root/cpukit/rtems/src/dpmemexternal2internal.c
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2018-08-06 11:53:42 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2018-08-10 07:14:43 +0200
commitb2de4260c5c71e518742731a8cdebe3411937181 (patch)
treef61b88bcb073b9787b25f280b3eac2b3408a8448 /cpukit/rtems/src/dpmemexternal2internal.c
parentrtems: Parameter types in rtems_partition_create() (diff)
downloadrtems-b2de4260c5c71e518742731a8cdebe3411937181.tar.bz2
score: Fix _Addresses_Subtract()
Use architecture-specific integer type for an address difference. Update #3486.
Diffstat (limited to 'cpukit/rtems/src/dpmemexternal2internal.c')
-rw-r--r--cpukit/rtems/src/dpmemexternal2internal.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/cpukit/rtems/src/dpmemexternal2internal.c b/cpukit/rtems/src/dpmemexternal2internal.c
index 0456010675..0d9a754b23 100644
--- a/cpukit/rtems/src/dpmemexternal2internal.c
+++ b/cpukit/rtems/src/dpmemexternal2internal.c
@@ -29,7 +29,7 @@ rtems_status_code rtems_port_external_to_internal(
{
Dual_ported_memory_Control *the_port;
ISR_lock_Context lock_context;
- uint32_t ending;
+ uintptr_t length;
if ( internal == NULL ) {
return RTEMS_INVALID_ADDRESS;
@@ -41,12 +41,12 @@ rtems_status_code rtems_port_external_to_internal(
return RTEMS_INVALID_ID;
}
- ending = _Addresses_Subtract( external, the_port->external_base );
+ length = (uintptr_t) _Addresses_Subtract( external, the_port->external_base );
- if ( ending > the_port->length ) {
+ if ( length > the_port->length ) {
*internal = external;
} else {
- *internal = _Addresses_Add_offset( the_port->internal_base, ending );
+ *internal = _Addresses_Add_offset( the_port->internal_base, length );
}
_ISR_lock_ISR_enable( &lock_context );