- fixed problem in getNameList service when no logs are present

This commit is contained in:
Michael Zillgith 2016-06-11 12:30:15 +02:00
parent 9f96006ffb
commit 64a98871cc
5 changed files with 24 additions and 17 deletions

View file

@ -6,8 +6,9 @@ Changes to version 0.9.2
- server: negative delete data set response is now compatible with new test procedures (TPCL 1.1)
- FileSystem API is now intended to access the complete file system. Path translation for VMD filestore is done by MMS file service implementation (removed FileSystem_setBasePath function)
- added CDC_DPL_create function
- MMS server: fixed raced condition when opening/closing connections in multi-threaded configuration.
- MMS server: fixed race condition when opening/closing connections in multi-threaded configuration.
- client: IedConnection_readObject and IedConnection_getVariableSpecification functions can now be applied to whole LNs
- client: GetLogicalNodeDirectory for data set and log ACSI classes will not use cached model data but request the information from server. This way the client can get up to date information about newly created dynamic data sets
Changes to version 0.9.1
------------------------

View file

@ -1,7 +1,7 @@
/*
* static_model.c
*
* automatically generated from beagle_demo.icd
* automatically generated from beagle_demo.iid
*/
#include "static_model.h"
@ -1257,7 +1257,7 @@ DataAttribute iedModel_GenericIO_GGIO1_SPCSO2_Cancel_ctlVal = {
NULL,
0,
IEC61850_FC_CO,
IEC61850_INT8,
IEC61850_BOOLEAN,
0,
NULL,
0};
@ -2279,7 +2279,7 @@ DataAttribute iedModel_GenericIO_TIM_GAPC1_OpCntRs_Oper_ctlVal = {
NULL,
0,
IEC61850_FC_CO,
IEC61850_BOOLEAN,
IEC61850_INT32,
0,
NULL,
0};

View file

@ -1,7 +1,7 @@
/*
* static_model.h
*
* automatically generated from beagle_demo.icd
* automatically generated from beagle_demo.iid
*/
#ifndef STATIC_MODEL_H_

View file

@ -88,16 +88,19 @@ MmsDomain_addJournal(MmsDomain* self, const char* name)
MmsJournal
MmsDomain_getJournal(MmsDomain* self, const char* name)
{
LinkedList journal = LinkedList_getNext(self->journals);
if (self->journals != NULL) {
while (journal != NULL) {
LinkedList journal = LinkedList_getNext(self->journals);
MmsJournal mmsJournal = (MmsJournal) LinkedList_getData(journal);
while (journal != NULL) {
if (strcmp(mmsJournal->name, name) == 0)
return mmsJournal;
MmsJournal mmsJournal = (MmsJournal) LinkedList_getData(journal);
journal = LinkedList_getNext(journal);
if (strcmp(mmsJournal->name, name) == 0)
return mmsJournal;
journal = LinkedList_getNext(journal);
}
}
return NULL;

View file

@ -188,15 +188,18 @@ getJournalListDomainSpecific(MmsServerConnection connection, char* domainName)
if (domain != NULL) {
nameList = LinkedList_create();
LinkedList journalList = domain->journals;
if (domain->journals != NULL) {
while ((journalList = LinkedList_getNext(journalList)) != NULL) {
LinkedList journalList = domain->journals;
MmsJournal journal = (MmsJournal) LinkedList_getData(journalList);
while ((journalList = LinkedList_getNext(journalList)) != NULL) {
MmsJournal journal = (MmsJournal) LinkedList_getData(journalList);
LinkedList_add(nameList, (void*) journal->name);
}
LinkedList_add(nameList, (void*) journal->name);
}
}
return nameList;