]> rtime.felk.cvut.cz Git - orte.git/blobdiff - orte/liborte/ORTESubscription.c
Add missing FREE()
[orte.git] / orte / liborte / ORTESubscription.c
index 7d8a5cdce27417e58fc690b95b49c5875ff824ba..3cbc8596a20b7cea3902b2940291f4110e5e18ee 100644 (file)
@@ -12,7 +12,7 @@
  *                      http://dce.felk.cvut.cz                       
  *                      http://www.ocera.org                          
  *                                                                    
- *  Author:             Petr Smolik    petr.smolik@wo.cz             
+ *  Author:             Petr Smolik    petr@smoliku.cz             
  *  Advisor:            Pavel Pisa                                   
  *  Project Responsible: Zdenek Hanzalek                              
  *  --------------------------------------------------------------------
@@ -60,6 +60,7 @@ ORTESubscriptionCreate(ORTEDomain *d,SubscriptionMode mode,SubscriptionType sTyp
     pthread_rwlock_unlock(&d->objectEntry.htimRootLock);
     printf("before call ORTESubscriptionCreateBestEffort is necessary to register \n\
             ser./deser. function for a given typeName!!!\n");
+    FREE(cstReader);
     return NULL;
   }  
   pthread_rwlock_wrlock(&d->subscriptions.lock);
@@ -71,7 +72,7 @@ ORTESubscriptionCreate(ORTEDomain *d,SubscriptionMode mode,SubscriptionType sTyp
     mreq.imr_multiaddr.s_addr=htonl(multicastIPAddress);
     mreq.imr_interface.s_addr=htonl(INADDR_ANY);
     if(sock_setsockopt(&d->taskRecvMulticastUserdata.sock,IPPROTO_IP,
-         IP_ADD_MEMBERSHIP,(void *) &mreq, sizeof(mreq))>=0) {
+         IP_ADD_MEMBERSHIP, (const char *)&mreq, sizeof(mreq))>=0) {
         debug(33,2) ("ORTESubscriptionCreate: listening to mgroup %s\n",
                       IPAddressToString(multicastIPAddress,sIPAddress));
     }
@@ -82,8 +83,8 @@ ORTESubscriptionCreate(ORTEDomain *d,SubscriptionMode mode,SubscriptionType sTyp
   guid.oid=(d->subscriptions.counter<<8)|OID_SUBSCRIPTION;
   sp=(ORTESubsProp*)MALLOC(sizeof(ORTESubsProp));
   memcpy(sp,&d->domainProp.subsPropDefault,sizeof(ORTESubsProp));
-  strcpy(sp->topic,topic);
-  strcpy(sp->typeName,typeName);
+  strcpy((char *)sp->topic,topic);
+  strcpy((char *)sp->typeName,typeName);
   sp->deadline=*deadline;
   sp->minimumSeparation=*minimumSeparation;
   sp->multicast=multicastIPAddress;
@@ -261,8 +262,8 @@ ORTESubscriptionPull(ORTESubscription *cstReader) {
           htimerUnicastCommon_get_expire(&cstReader->deadlineTimer))>=0) {
       memset(&info,0,sizeof(info));
       info.status=DEADLINE;
-      info.topic=sp->topic;
-      info.type=sp->typeName;
+      info.topic=(char*)sp->topic;
+      info.type=(char*)sp->typeName;
       cstReader->objectEntryOID->recvCallBack(&info,
           cstReader->objectEntryOID->instance,
           cstReader->objectEntryOID->callBackParam);