+ print "SM: WANTMORE: $name\n";
+ $tag=ID3FS::PathElement::Tag->new($self->{db}, $name);
+ if($tag)
+ {
+ push(@{$self->{elements}}, $tag);
+# $self->state($STATE_TAG);
+ }
+ else
+ {
+ $self->state($STATE_INVALID);
+ }
+ my @valid_tagvals=$self->{db}->tag_values($tag);
+ print "TAGVALUES: $name: ", join(', ', @valid_tagvals), "\n";
+ if(@valid_tagvals)
+ {
+ if(grep { $name eq $_; } @valid_tagvals)
+ {
+ print "TAGVAL VALID\n";
+ $self->state($STATE_TAGVAL);
+ push(@{$self->{elements}}, ID3FS::PathElement::Tagval($name));
+ }
+ else
+ {
+ print "ERROR: unknown tagval: $tagval\n";
+ $self->state($STATE_INVALID);
+ }
+ }
+ else
+ {
+ $self->state($STATE_INVALID);
+ }