Revision: 7405
http://playerstage.svn.sourceforge.net/playerstage/?rev=7405&view=rev
Author: gerkey
Date: 2009-03-09 20:08:24 +0000 (Mon, 09 Mar 2009)
Log Message:
-----------
Fixed model-name copying in simiface
Modified Paths:
--------------
code/branches/federation/gazebo/libgazebo/SimIface.cc
Modified: code/branches/federation/gazebo/libgazebo/SimIface.cc
===================================================================
--- code/branches/federation/gazebo/libgazebo/SimIface.cc 2009-03-09
19:14:49 UTC (rev 7404)
+++ code/branches/federation/gazebo/libgazebo/SimIface.cc 2009-03-09
20:08:24 UTC (rev 7405)
@@ -156,7 +156,9 @@
this->Lock(1);
SimulationRequestData *request =
&(this->data->requests[this->data->requestCount++]);
request->type = SimulationRequestData::GET_POSE3D;
- memcpy(request->modelName, modelName, 512);
+ memset(request->modelName, 0, 512);
+ strncpy(request->modelName, modelName, 512);
+ request->modelName[511] = '\0';
this->Unlock();
}
@@ -168,7 +170,9 @@
this->Lock(1);
SimulationRequestData *request =
&(this->data->requests[this->data->requestCount++]);
request->type = SimulationRequestData::GET_POSE2D;
- memcpy(request->modelName, modelName, 512);
+ memset(request->modelName, 0, 512);
+ strncpy(request->modelName, modelName, 512);
+ request->modelName[511] = '\0';
this->Unlock();
}
@@ -183,7 +187,9 @@
request->type = SimulationRequestData::SET_POSE3D;
request->modelPose = modelPose;
- memcpy(request->modelName, modelName, 512);
+ memset(request->modelName, 0, 512);
+ strncpy(request->modelName, modelName, 512);
+ request->modelName[511] = '\0';
this->Unlock();
}
@@ -197,7 +203,9 @@
request->type = gazebo::SimulationRequestData::SET_POSE2D;
- memcpy(request->modelName, modelName, 512);
+ memset(request->modelName, 0, 512);
+ strncpy(request->modelName, modelName, 512);
+ request->modelName[511] = '\0';
request->modelPose.pos.x = x;
request->modelPose.pos.y = y;
@@ -216,7 +224,9 @@
SimulationRequestData *request =
&(this->data->requests[this->data->requestCount++]);
request->type = gazebo::SimulationRequestData::SET_STATE;
- memcpy(request->modelName, modelName, 512);
+ memset(request->modelName, 0, 512);
+ strncpy(request->modelName, modelName, 512);
+ request->modelName[511] = '\0';
request->modelPose = modelPose;
request->modelLinearVel = linearVel;
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Playerstage-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/playerstage-commit