screen_recorder 0.1.2 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,3 +1,7 @@
1
+ # 0.1.3 - Leak Plug Release
2
+
3
+ * Fix a couple of memory leaks
4
+
1
5
  # 0.1.2 - MacRuby Release
2
6
 
3
7
  * Appease GC era compiler used by MacRuby
@@ -16,12 +16,12 @@
16
16
  @property (assign) AVCaptureScreenInput* input;
17
17
  @property (assign) AVCaptureMovieFileOutput* output;
18
18
 
19
- // File that the recording will be saved to
20
- @property (assign) NSURL* file;
21
-
22
19
  // Used for pseudo run-loop synchronization
23
20
  @property (assign) dispatch_semaphore_t sema;
24
21
 
22
+ // File that the recording will be saved to
23
+ @property (retain) NSURL* file;
24
+
25
25
  - (BOOL) start;
26
26
  - (BOOL) start:(NSURL*)file_name;
27
27
  - (BOOL) isStarted;
@@ -71,7 +71,7 @@ rb_recorder_start(int argc, VALUE* argv, VALUE self)
71
71
  default:
72
72
  path = [NSString stringWithCString:StringValueCStr(argv[0])
73
73
  encoding:NSUTF8StringEncoding];
74
- path_url = [NSURL fileURLWithPath:path];
74
+ path_url = [NSURL fileURLWithPath:path isDirectory:NO];
75
75
  result = [OBJC_UNWRAP(self) start:path_url];
76
76
  [path release];
77
77
  [path_url release];
@@ -142,11 +142,18 @@ static
142
142
  VALUE
143
143
  rb_recorder_file(VALUE self)
144
144
  {
145
- NSString* name = [[OBJC_UNWRAP(self) file] path];
146
- if (name)
147
- return rb_str_new_cstr([name cStringUsingEncoding:NSUTF8StringEncoding]);
148
- else
149
- return Qnil;
145
+ NSString* name = [OBJC_UNWRAP(self).file path];
146
+ VALUE path;
147
+
148
+ if (name) {
149
+ path = rb_str_new_cstr([name cStringUsingEncoding:NSUTF8StringEncoding]);
150
+ [name release];
151
+ }
152
+ else {
153
+ path = Qnil;
154
+ }
155
+
156
+ return path;
150
157
  }
151
158
 
152
159
  static
@@ -200,7 +207,6 @@ Init_screen_recorder()
200
207
  * - run loop hack is not needed if code is already being called from
201
208
  * in a run loop
202
209
  * - pausing is not working...not sure why; so it is not exposed for now
203
- *
204
210
  */
205
211
  rb_cRecorder = rb_define_class("ScreenRecorder", rb_cObject);
206
212
 
@@ -1,4 +1,4 @@
1
1
  class ScreenRecorder
2
2
  # @return [String]
3
- VERSION = '0.1.2'
3
+ VERSION = '0.1.3'
4
4
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: screen_recorder
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-12-09 00:00:00.000000000 Z
12
+ date: 2012-12-10 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: yard
@@ -95,7 +95,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
95
95
  version: '0'
96
96
  segments:
97
97
  - 0
98
- hash: 127306656123456593
98
+ hash: 2785907970540492481
99
99
  required_rubygems_version: !ruby/object:Gem::Requirement
100
100
  none: false
101
101
  requirements:
@@ -104,7 +104,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
104
104
  version: '0'
105
105
  segments:
106
106
  - 0
107
- hash: 127306656123456593
107
+ hash: 2785907970540492481
108
108
  requirements: []
109
109
  rubyforge_project:
110
110
  rubygems_version: 1.8.24