resedit 1.8.4 → 1.8.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a424846e1a332caa274f40012e49105a519e17ef
4
- data.tar.gz: f74b80c08c7a3f50bd6cbf3b0eb12709bd196918
3
+ metadata.gz: 3f076cd96b73b751c42dbd40c51c2d2dcbfeda73
4
+ data.tar.gz: f6ed09115d8564692914c8108ab78a45ecde1ef5
5
5
  SHA512:
6
- metadata.gz: 896f4e374b665fa48b197c86f740f0db2deffcdccf658d6b05804807c29507e048fee7b580583d28c972c2ee3dddb44fcad42f7085be8a022b75129a54d4e3c6
7
- data.tar.gz: feee4a9822ed895a8cc3066c67e4ebd6ec5838b396bd6747329de9e7d8e31930c0fa756260de50ddcae343ef4879d1f7dc8cd330f9c18305d123870b3aa658b1
6
+ metadata.gz: 1e72a2f984596a199621dfcc47dd23d54314934104cffba37fd229f3a90446211004fba87ecc15fb8e5ef400b4ddde27265ea0e7c6a6e6b3cf99179ac14348a7
7
+ data.tar.gz: 2e944951d3a6c31cdbe60fbf417082b64a1b55dcf09570660635eaf9823448926480c44466470b390b2ee0e06819e397cb0f7d325f9bf013204a75ffa047e871
data/lib/resedit.rb CHANGED
@@ -25,5 +25,5 @@ require 'resedit/mz/multiexe'
25
25
 
26
26
 
27
27
  module Resedit
28
- VERSION = "1.8.4"
28
+ VERSION = "1.8.5"
29
29
  end
data/lib/resedit/mz/mz.rb CHANGED
@@ -12,6 +12,7 @@ module Resedit
12
12
 
13
13
  def initialize(exe, file, size)
14
14
  super(exe, file, size)
15
+ @fsize = size
15
16
  @relocFix = 0
16
17
  @newOfs = false
17
18
  if @info[:RelocTableOffset]>=0x40
@@ -33,7 +34,7 @@ module Resedit
33
34
  cs = @info[:CS]
34
35
  sz = fileSize()-headerSize()
35
36
  codesize += PARA - codesize % PARA if codesize % PARA!=0
36
- changeSize(sz + codesize + headerSize())
37
+ setFileSize(sz + codesize + headerSize())
37
38
  paras = codesize / PARA
38
39
  setInfo(:SS, ss+paras)
39
40
  setInfo(:CS, cs+paras)
@@ -44,7 +45,7 @@ module Resedit
44
45
  end
45
46
  mode(HOW_CHANGED)
46
47
  @relocFix = paras
47
- MZEnv.instance().set(:relocFix, paras.to_s)
48
+ @exe.env.set(:relocFix, paras.to_s)
48
49
  return codesize
49
50
  end
50
51
 
@@ -98,8 +99,7 @@ module Resedit
98
99
  add = count - @info[:NumberOfRelocations]
99
100
  return if add<=0
100
101
  add -= freeSpace()/4
101
- return if add<=0
102
- addHeaderSize(add*4)
102
+ addHeaderSize(add*4) if add>0
103
103
  setInfo(:NumberOfRelocations, count)
104
104
  mode(HOW_CHANGED)
105
105
  end
@@ -109,14 +109,13 @@ module Resedit
109
109
  #check relocation exists
110
110
  for i in 0..@info[:NumberOfRelocations]-1
111
111
  rel = getRelocation(i)
112
- if @exe.body.seg2Linear(rel[0], rel[1]) == ofs
113
- return false
114
- end
112
+ return false if @exe.body.seg2Linear(rel[0], rel[1]) == ofs
115
113
  end
116
114
  #add relocation
115
+ rid = @info[:NumberOfRelocations]
117
116
  setSpaceForRelocs(@info[:NumberOfRelocations]+1)
118
117
  val = @exe.body.linear2seg(ofs)
119
- setRelocation(@info[:NumberOfRelocations], val)
118
+ setRelocation(rid, val)
120
119
  return true
121
120
  end
122
121
 
@@ -134,7 +133,7 @@ module Resedit
134
133
  s = colStr(sprintf("%d (%X)", fsz,fsz), changed?(2, 4))
135
134
  printf("mz file size: %s\treal file size: %d (0x%X)\n", s, @fsize, @fsize)
136
135
  printf("header size: %s\n", colStr(hsz, changed?(8, 2)))
137
- printf("code size: %s\n", colStr(fsz - hsz, @mz.body.changed?(0)))
136
+ printf("code size: %s\n", colStr(fsz - hsz, @exe.body.changed?(0)))
138
137
  printf("reloc table size: %s\n", colStr(@info[:NumberOfRelocations] * 4, changed?(6, 2)))
139
138
  printf("free space in header: before relocs 0x%X, after relocs 0x%X\n", freeSpace(true), freeSpace())
140
139
  printf("reloc fix: 0x%X\n", @relocFix)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: resedit
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.8.4
4
+ version: 1.8.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - bjfn
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-01-02 00:00:00.000000000 Z
11
+ date: 2019-03-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: chunky_png
@@ -99,7 +99,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
99
99
  version: '0'
100
100
  requirements: []
101
101
  rubyforge_project:
102
- rubygems_version: 2.6.11
102
+ rubygems_version: 2.5.2.3
103
103
  signing_key:
104
104
  specification_version: 4
105
105
  summary: OG resource proc library!