cinera.c: Fix 0.5.20 more correctly

The actual bug was that MarkerIndex wasn't being incremented for
HMML_CATEGORY markers mid-annotation... (HMML_MEMBER and HMML_PROJECT
were fine.)
This commit is contained in:
Matt Mascarenhas 2018-01-06 00:00:05 +00:00
parent b55f20dcb1
commit acbe38b01f
1 changed files with 15 additions and 17 deletions

View File

@ -14,7 +14,7 @@ typedef struct
version CINERA_APP_VERSION = {
.Major = 0,
.Minor = 5,
.Patch = 20
.Patch = 21
};
// TODO(matt): Copy in the DB 3 stuff from cinera_working.c
@ -2594,6 +2594,7 @@ HMMLToBuffers(buffers *CollationBuffers, template **BespokeTemplate, char *Filen
HasFilterMenu = TRUE;
}
InsertCategory(&Topics, &LocalTopics, &Media, &LocalMedia, Anno->markers[MarkerIndex].marker);
++MarkerIndex;
}
}
@ -2843,24 +2844,21 @@ AppendedIdentifier:
while(MarkerIndex < Anno->marker_count)
{
if(Anno->markers[MarkerIndex].type == HMML_CATEGORY)
switch(GenerateTopicColours(Anno->markers[MarkerIndex].marker))
{
switch(GenerateTopicColours(Anno->markers[MarkerIndex].marker))
{
case RC_SUCCESS:
case RC_NOOP:
break;
case RC_ERROR_FILE:
case RC_ERROR_MEMORY:
hmml_free(&HMML);
return RC_ERROR_FATAL;
};
if(!HasFilterMenu)
{
HasFilterMenu = TRUE;
}
InsertCategory(&Topics, &LocalTopics, &Media, &LocalMedia, Anno->markers[MarkerIndex].marker);
case RC_SUCCESS:
case RC_NOOP:
break;
case RC_ERROR_FILE:
case RC_ERROR_MEMORY:
hmml_free(&HMML);
return RC_ERROR_FATAL;
};
if(!HasFilterMenu)
{
HasFilterMenu = TRUE;
}
InsertCategory(&Topics, &LocalTopics, &Media, &LocalMedia, Anno->markers[MarkerIndex].marker);
++MarkerIndex;
}