fix first GetParameterNames
authorDobrica Pavlinusic <dpavlin@rot13.org>
Sun, 7 Mar 2010 14:20:59 +0000 (14:20 +0000)
committerDobrica Pavlinusic <dpavlin@rot13.org>
Sun, 7 Mar 2010 14:20:59 +0000 (14:20 +0000)
git-svn-id: https://perl-cwmp.googlecode.com/svn/trunk@258 836a5e1a-633d-0410-964b-294494ad4392

lib/CWMP/Session.pm

index 442a434..26b1358 100644 (file)
@@ -144,10 +144,12 @@ sub process_request {
                        my @params = grep { m/\.$/ } keys %{ $stored->{ParameterInfo} };
                        if ( @params ) {
                                warn "# GetParameterNames ", dump( @params );
                        my @params = grep { m/\.$/ } keys %{ $stored->{ParameterInfo} };
                        if ( @params ) {
                                warn "# GetParameterNames ", dump( @params );
-                               $xml = $self->dispatch( 'GetParameterNames', [ shift @params, 1 ] );
+                               my $first = shift @params;
+                               delete $stored->{ParameterInfo}->{$first};
+                               $xml = $self->dispatch( 'GetParameterNames', [ $first, 1 ] );
                                foreach ( @params ) {
                                        $queue->enqueue( 'GetParameterNames', [ $_, 1 ] );
                                foreach ( @params ) {
                                        $queue->enqueue( 'GetParameterNames', [ $_, 1 ] );
-                                       delete( $stored->{ParameterInfo}->{ $_ } );
+                                       delete $stored->{ParameterInfo}->{ $_ };
                                }
                                $self->store->set_state( $uid, $stored );
                        } else {
                                }
                                $self->store->set_state( $uid, $stored );
                        } else {