Changeset 4457 for trunk/psLib/src/collections/psMetadata.c
- Timestamp:
- Jul 5, 2005, 5:04:35 PM (21 years ago)
- File:
-
- 1 edited
-
trunk/psLib/src/collections/psMetadata.c (modified) (19 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psLib/src/collections/psMetadata.c
r4401 r4457 12 12 * @author Ross Harman, MHPCC 13 13 * 14 * @version $Revision: 1. 69$ $Name: not supported by cvs2svn $15 * @date $Date: 2005-0 6-27 20:38:12$14 * @version $Revision: 1.70 $ $Name: not supported by cvs2svn $ 15 * @date $Date: 2005-07-06 03:04:35 $ 16 16 * 17 17 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 122 122 psFree(iter->iter); 123 123 124 if (iter-> preg!= NULL) {125 regfree(iter-> preg);124 if (iter->regex != NULL) { 125 regfree(iter->regex); 126 126 } 127 127 } … … 268 268 } 269 269 270 bool psMetadataAddItem(psMetadata *md, const psMetadataItem *item, psS32location, psS32 flags)270 bool psMetadataAddItem(psMetadata *md, const psMetadataItem *item, long location, psS32 flags) 271 271 { 272 272 char * key = NULL; … … 360 360 } 361 361 362 bool psMetadataAdd(psMetadata *md, intlocation, const char *name,362 bool psMetadataAdd(psMetadata *md, long location, const char *name, 363 363 int format, const char *comment, ...) 364 364 { … … 372 372 } 373 373 374 bool psMetadataAddV(psMetadata *md, intlocation, const char *name,374 bool psMetadataAddV(psMetadata *md, long location, const char *name, 375 375 int format, const char *comment, va_list list) 376 376 { … … 391 391 392 392 #define METADATA_ADD_TYPE(NAME,TYPE,METATYPE) \ 393 psBool psMetadataAdd##NAME(psMetadata* md, psS32where, const char* name, \393 psBool psMetadataAdd##NAME(psMetadata* md, long where, const char* name, \ 394 394 const char* comment, TYPE value) { \ 395 395 return psMetadataAdd(md,where,name, METATYPE,comment,value); \ … … 409 409 METADATA_ADD_TYPE(Array,psArray*,PS_META_ARRAY) 410 410 411 psBool psMetadataRemove(psMetadata *md, psS32where, const char *key)411 psBool psMetadataRemove(psMetadata *md, long where, const char *key) 412 412 { 413 413 PS_ASSERT_PTR_NON_NULL(md,NULL); … … 580 580 psMetadataLookupNumTYPE(Bool) 581 581 582 psMetadataItem* psMetadataGet(const psMetadata *md, intlocation)582 psMetadataItem* psMetadataGet(const psMetadata *md, long location) 583 583 { 584 584 psMetadataItem* entry = NULL; … … 597 597 598 598 psMetadataIterator* psMetadataIteratorAlloc(psMetadata* md, 599 intlocation,599 long location, 600 600 const char* regex) 601 601 { … … 604 604 605 605 psMetadataIterator* newIter = psAlloc(sizeof(psMetadataIterator)); 606 newIter-> preg= NULL;606 newIter->regex = NULL; 607 607 newIter->iter = NULL; 608 608 … … 614 614 return newIter; 615 615 } else { 616 int regRtn = regcomp(newIter-> preg,regex,0);616 int regRtn = regcomp(newIter->regex,regex,0); 617 617 if (regRtn != 0) { 618 618 char errMsg[256]; 619 regerror(regRtn, newIter-> preg, errMsg, 256);620 regfree(newIter-> preg);619 regerror(regRtn, newIter->regex, errMsg, 256); 620 regfree(newIter->regex); 621 621 psError(PS_ERR_BAD_PARAMETER_VALUE, true, 622 622 PS_ERRORTEXT_psMetadata_REGEX_INVALID, … … 633 633 634 634 bool psMetadataIteratorSet(psMetadataIterator* iterator, 635 intlocation)635 long location) 636 636 { 637 637 int match; … … 643 643 PS_ASSERT_PTR_NON_NULL(iterator->iter,NULL); 644 644 645 regex_t* preg = iterator->preg;645 regex_t* regex = iterator->regex; 646 646 647 647 // handle trivial case where no regex subsetting is required. 648 if ( preg== NULL) {648 if (regex == NULL) { 649 649 return psListIteratorSet(iter,location); 650 650 } … … 655 655 psListIteratorSet(iter,PS_LIST_TAIL); 656 656 while ( (cursor=(psMetadataItem*)iter->cursor) != NULL) { 657 if (regexec( preg, cursor->name, 0, NULL, 0) == 0) {657 if (regexec(regex, cursor->name, 0, NULL, 0) == 0) { 658 658 // this key is a match 659 659 match--; … … 671 671 psListIteratorSet(iter,PS_LIST_HEAD); 672 672 while ( (cursor=(psMetadataItem*)iter->cursor) != NULL) { 673 if (regexec( preg, cursor->name, 0, NULL, 0) == 0) {673 if (regexec(regex, cursor->name, 0, NULL, 0) == 0) { 674 674 // this key is a match 675 675 match++; … … 692 692 PS_ASSERT_PTR_NON_NULL(iterator->iter,NULL); 693 693 694 regex_t* preg = iterator->preg;694 regex_t* regex = iterator->regex; 695 695 696 696 // handle trivial case where no regex subsetting is required. 697 if ( preg== NULL) {697 if (regex == NULL) { 698 698 return (psMetadataItem*)psListGetAndIncrement(iter); 699 699 } … … 703 703 while (psListGetAndIncrement(iter) != NULL) { 704 704 if (iter->cursor != NULL && 705 regexec( preg, ((psMetadataItem*)iter->cursor)->name, 0, NULL, 0) == 0) {705 regexec(regex, ((psMetadataItem*)iter->cursor)->name, 0, NULL, 0) == 0) { 706 706 // this key is a match 707 707 break; … … 720 720 PS_ASSERT_PTR_NON_NULL(iterator->iter,NULL); 721 721 722 regex_t* preg = iterator->preg;722 regex_t* regex = iterator->regex; 723 723 724 724 // handle trivial case where no regex subsetting is required. 725 if ( preg== NULL) {725 if (regex == NULL) { 726 726 return (psMetadataItem*)psListGetAndDecrement(iter); 727 727 } … … 731 731 while (psListGetAndDecrement(iter) != NULL) { 732 732 if (iter->cursor != NULL && 733 regexec( preg, ((psMetadataItem*)iter->cursor)->name, 0, NULL, 0) == 0) {733 regexec(regex, ((psMetadataItem*)iter->cursor)->name, 0, NULL, 0) == 0) { 734 734 // this key is a match 735 735 break;
Note:
See TracChangeset
for help on using the changeset viewer.
