diff options
-rwxr-xr-x | XOrg/xorglog.pm | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/XOrg/xorglog.pm b/XOrg/xorglog.pm index a802efd..0f20a3c 100755 --- a/XOrg/xorglog.pm +++ b/XOrg/xorglog.pm @@ -196,6 +196,18 @@ sub _parse_input_drivers { ); push @{$self->{devices}}, $dev; + } elsif ($_ =~ /$time_regex \(II\) Using input driver '(.*)' for '(.*)'/) { + my $module = $self->modules->{$1}; + if ($2 eq $dev->name) { + $dev->module($module); + } else { + $dev = InputDevice->new( + name => $2, + source => "xorg.conf", + module => $module + ); + push @{$self->{devices}}, $dev; + } } next if not defined $dev; @@ -212,8 +224,6 @@ sub _parse_input_drivers { ); push @{$self->{devices}}, $dev; } - } elsif ($_ =~ /$time_regex \(II\) Using input driver '(.*)' for '$dev->{name}'/) { - $dev->module($self->modules->{$1}); } elsif ($_ =~ /$time_regex \(\*\*\) Option "(.*)" "(.*)"/) { $dev->add_option($1, $2); } elsif ($_ =~ m|$time_regex \(II\) No input driver/identifier specified \(ignoring\)|) { |