wwine 0.1 → 0.1.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. data/wwine +19 -10
  2. metadata +4 -2
data/wwine CHANGED
@@ -20,7 +20,7 @@ require 'getoptlong'
20
20
  # To read info for --debuginfo
21
21
  require 'open3'
22
22
  # Application version
23
- $version = 0.1
23
+ $version = '0.1.1'
24
24
  # The wine flavour to use
25
25
  $wine = nil
26
26
  # The bottle to use
@@ -87,7 +87,7 @@ def killWine (dryRun = false, signal = 15)
87
87
  # If wine is not a part of the process name, check if the
88
88
  # name either includes a \ (which most likely means it is a windows
89
89
  # path because it has already matched one of the above) or exe/dll.
90
- if ! name =~ /wine/i && ( name =~ /\// || ! name =~ /\.(exe|dll)/i )
90
+ if name !~ /wine/i && (name !~ /\// || name !~ /\.(exe|dll)/i)
91
91
  next
92
92
  end
93
93
  else
@@ -95,9 +95,18 @@ def killWine (dryRun = false, signal = 15)
95
95
  end
96
96
  # At least on Linux kernels, /proc/ will include useful info, we use it to
97
97
  # check if the exe actually is wine
98
- if File.exists?('/proc/'+pid+'/exe') and File.symlink?('/proc/'+pid+'/exe')
98
+
99
+ # /exe test
100
+ if File.readable?('/proc/'+pid+'/exe') and File.symlink?('/proc/'+pid+'/exe')
99
101
  linkValue = File.readlink('/proc/'+pid+'/exe')
100
- if File.readlink('/proc/'+pid+'/exe') !~ /wine/i
102
+ if File.readlink('/proc/'+pid+'/exe') !~ /\/[^\/]*wine[^\/]*$/i
103
+ next
104
+ end
105
+ # /cmdline test (for when /exe isn't readable)
106
+ elsif File.readable?('/proc/'+pid+'/cmdline')
107
+ cmdline = IO.read('/proc/'+pid+'/cmdline')
108
+ cmdline.sub!(/\0.*/,'');
109
+ if cmdline !~ /\/[^\/]*wine[^\/]*$/i && cmdline !~ /^[A-Z]:\\[^\\]+\\/
101
110
  next
102
111
  end
103
112
  end
@@ -210,7 +219,7 @@ def writeWrapper (targetFile, wwineCommand, otherCommand, cwd, wwineInfo, args,
210
219
  end
211
220
 
212
221
  file.puts('#!/bin/sh')
213
- file.puts('# Script autogenerated by wwine '+$version.to_s+' (http://random.zerodogg.org/wwine)')
222
+ file.puts('# Script autogenerated by wwine '+$version+' (http://random.zerodogg.org/wwine)')
214
223
  file.puts('# Licensed under the GNU General Public License version 3 or later')
215
224
  file.puts('#')
216
225
  file.puts('# You should have received a copy of the GNU General Public License')
@@ -332,7 +341,7 @@ def loadWwineDataFromFile (file,dryRun = false)
332
341
 
333
342
  if info[0] != 'v1'
334
343
  puts "This version of wwine only supports info format v1."
335
- puts "This file is verison "+info[0]
344
+ puts "This file is version "+info[0]
336
345
  puts "Unable to continue."
337
346
  exit(0)
338
347
  end
@@ -407,7 +416,7 @@ end
407
416
 
408
417
  # Purpose: Print the help output
409
418
  def Help ()
410
- puts "wwine "+$version.to_s
419
+ puts "wwine "+$version
411
420
  puts ""
412
421
  puts "Usage: wwine (WWINE PARAMETERS) PROGRAM -- [PROGRAM ARGUMENTS]"
413
422
  puts ""
@@ -581,7 +590,7 @@ end
581
590
  # Purpose: Print debugging info
582
591
  def debugInfo ()
583
592
  outFormat = '%-20s: %s'+"\n"
584
- puts "wwine "+$version.to_s
593
+ puts "wwine "+$version
585
594
  # Load a --from file if it is set
586
595
  if $wwineDataFrom
587
596
  loadWwineDataFromFile($wwineDataFrom,true)
@@ -643,7 +652,7 @@ def handleException(ex)
643
652
  puts()
644
653
  puts('An exception has occurred and wwine can not continue.')
645
654
  puts('This almost certainly reflects a bug in wwine.')
646
- puts('Please check that you have the latest version off wwine,')
655
+ puts('Please check that you have the latest version of wwine,')
647
656
  puts('and if you do, report this issue along with the text between the "---" above');
648
657
  puts('to http://random.zerodogg.org/wwine/bugs')
649
658
  exit(1)
@@ -931,7 +940,7 @@ begin
931
940
  when '--cxinstalldir'
932
941
  $cxPath = arg
933
942
  when '--version'
934
- puts('wwine version '+$version.to_s+' (for wine version info, run wwine --debuginfo)')
943
+ puts('wwine version '+$version+' (for wine version info, run wwine --debuginfo)')
935
944
  exit(0)
936
945
  when '--wrap'
937
946
  $wrapperPath = arg
metadata CHANGED
@@ -5,7 +5,9 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 1
8
- version: "0.1"
8
+ - 1
9
+ - 1
10
+ version: 0.1.1.1
9
11
  platform: ruby
10
12
  authors:
11
13
  - Eskild Hustvedt
@@ -13,7 +15,7 @@ autorequire:
13
15
  bindir: .
14
16
  cert_chain: []
15
17
 
16
- date: 2010-04-14 00:00:00 +02:00
18
+ date: 2010-06-12 00:00:00 +02:00
17
19
  default_executable:
18
20
  dependencies: []
19
21