win32-api 1.9.0-universal-mingw32 → 1.9.1-universal-mingw32
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 +4 -4
- data/CHANGES +3 -0
- data/MANIFEST +1 -1
- data/{README → README.md} +21 -16
- data/ext/win32/api.c +11 -1
- data/lib/win32/ruby21_32/win32/api.so +0 -0
- data/lib/win32/ruby21_64/win32/api.so +0 -0
- data/lib/win32/ruby22_32/win32/api.so +0 -0
- data/lib/win32/ruby22_64/win32/api.so +0 -0
- data/lib/win32/ruby23_32/win32/api.so +0 -0
- data/lib/win32/ruby23_64/win32/api.so +0 -0
- data/lib/win32/ruby24_32/win32/api.so +0 -0
- data/lib/win32/ruby24_64/win32/api.so +0 -0
- data/lib/win32/ruby25_32/win32/api.so +0 -0
- data/lib/win32/ruby25_64/win32/api.so +0 -0
- data/lib/win32/ruby26_32/win32/api.so +0 -0
- data/lib/win32/ruby26_64/win32/api.so +0 -0
- data/lib/win32/ruby27_32/win32/api.so +0 -0
- data/lib/win32/ruby27_64/win32/api.so +0 -0
- data/lib/win32/ruby28_64/win32/api.so +0 -0
- data/lib/win32/ruby2_32/win32/api.so +0 -0
- data/lib/win32/ruby2_64/win32/api.so +0 -0
- data/test/test_win32_api.rb +1 -1
- data/win32-api.gemspec +2 -2
- metadata +3 -4
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 50f2020c700c00a8f72649d59a580d017a3418c42db26dc79cd6d379ba589239
         | 
| 4 | 
            +
              data.tar.gz: d591539fa8826a781bb96131f7a79cc018e2bf4f8bb38b132bdc3d93d1236c86
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 9f2db91230d8b7a4c360fb698d75a2e30106aa7786b63d9d0536b87d938f1c9771a5d6d8516002ac3ddc0b03086c72b15780ab8ffbc2ca3d28bee8be3dad5fbb
         | 
| 7 | 
            +
              data.tar.gz: 879067f098f0f684925eaa592009c77e638447ad738935106775f857a81aefe4afc9b2500e5108645fc7e3dbb73866473d8112df00af9628f149f6559b165f56
         | 
    
        data/CHANGES
    CHANGED
    
    
    
        data/MANIFEST
    CHANGED
    
    
    
        data/{README → README.md}
    RENAMED
    
    | @@ -1,8 +1,10 @@ | |
| 1 | 
            -
             | 
| 1 | 
            +
            # Description
         | 
| 2 2 | 
             
              This is a drop-in replacement for the Win32API library currently part of
         | 
| 3 3 | 
             
              Ruby's standard library.
         | 
| 4 4 |  | 
| 5 | 
            -
             | 
| 5 | 
            +
            # Synopsis
         | 
| 6 | 
            +
             | 
| 7 | 
            +
            ```ruby
         | 
| 6 8 | 
             
              require 'win32/api'
         | 
| 7 9 | 
             
              include Win32
         | 
| 8 10 |  | 
| @@ -35,8 +37,9 @@ | |
| 35 37 | 
             
              addr = GetProcAddress.call(hlib, 'MessageBeep')
         | 
| 36 38 | 
             
              func = Win32::API::Function.new(addr, 'L', 'L')
         | 
| 37 39 | 
             
              func.call(0)
         | 
| 40 | 
            +
            ```
         | 
| 38 41 |  | 
| 39 | 
            -
             | 
| 42 | 
            +
            # Differences between win32-api and Win32API
         | 
| 40 43 | 
             
              * This library has callback support
         | 
| 41 44 | 
             
              * This library supports raw function pointers.
         | 
| 42 45 | 
             
              * This library supports a separate string type for const char* (S).
         | 
| @@ -48,9 +51,9 @@ | |
| 48 51 | 
             
              * Removed the support for lower case prototype and return types. Always
         | 
| 49 52 | 
             
                use capital letters.
         | 
| 50 53 |  | 
| 51 | 
            -
             | 
| 52 | 
            -
               | 
| 53 | 
            -
              motivation at the time the project was originally created | 
| 54 | 
            +
            # Developer's Notes
         | 
| 55 | 
            +
              NOTE: **Some of the information below is now out of date, but explains my
         | 
| 56 | 
            +
              motivation at the time the project was originally created.**
         | 
| 54 57 |  | 
| 55 58 | 
             
              The current Win32API library that ships with the standard library has been
         | 
| 56 59 | 
             
              slated for removal from Ruby 2.0 and it will not receive any updates in the
         | 
| @@ -76,7 +79,7 @@ | |
| 76 79 | 
             
              Most importantly, we can now add, modify and fix any features that we feel
         | 
| 77 80 | 
             
              best benefit our end users.
         | 
| 78 81 |  | 
| 79 | 
            -
             | 
| 82 | 
            +
            # Multiple Binaries
         | 
| 80 83 | 
             
              As of win32-api 1.4.8 a binary gem is shipped that contains binaries for
         | 
| 81 84 | 
             
              both Ruby 1.8, Ruby 1.9, and 2.x. For Ruby 2.x, both 32 and 64 bit binaries
         | 
| 82 85 | 
             
              are included as of release 1.5.0.
         | 
| @@ -84,29 +87,29 @@ | |
| 84 87 | 
             
              The file under lib/win32 dynamically requires the correct binary based on
         | 
| 85 88 | 
             
              your version of Ruby.
         | 
| 86 89 |  | 
| 87 | 
            -
             | 
| 90 | 
            +
            # Documentation
         | 
| 88 91 | 
             
              The source file contains inline RDoc documentation. If you installed
         | 
| 89 92 | 
             
              this file as a gem, then you have the docs. Run "gem server" and point
         | 
| 90 93 | 
             
              your browser at http://localhost:8808 to see them.
         | 
| 91 94 |  | 
| 92 | 
            -
             | 
| 95 | 
            +
            # Warranty
         | 
| 93 96 | 
             
              This package is provided "as is" and without any express or
         | 
| 94 97 | 
             
              implied warranties, including, without limitation, the implied
         | 
| 95 98 | 
             
              warranties of merchantability and fitness for a particular purpose.
         | 
| 96 99 |  | 
| 97 | 
            -
             | 
| 100 | 
            +
            # Known Issues
         | 
| 98 101 | 
             
              Possible callback issues when dealing with multi-threaded applications.
         | 
| 99 102 |  | 
| 100 103 | 
             
              Please submit any bug reports to the project page at
         | 
| 101 104 | 
             
              https://github.com/cosmo0920/win32-api
         | 
| 102 105 |  | 
| 103 | 
            -
             | 
| 106 | 
            +
            ## Contributions
         | 
| 104 107 | 
             
              Although this library is free, please consider having your company
         | 
| 105 108 | 
             
              setup a gittip if used by your company professionally.
         | 
| 106 109 |  | 
| 107 110 | 
             
              http://www.gittip.com/djberg96/
         | 
| 108 111 |  | 
| 109 | 
            -
             | 
| 112 | 
            +
            # Future Plans
         | 
| 110 113 | 
             
              I really don't have future plans for this library since you should use FFI
         | 
| 111 114 | 
             
              as your preferred C interface going forward. All of my own projects have
         | 
| 112 115 | 
             
              since been converted to either use FFI or an analogous OLE interface.
         | 
| @@ -115,15 +118,17 @@ | |
| 115 118 | 
             
              there who are still using it, but I strongly encourage you to convert
         | 
| 116 119 | 
             
              your projects to FFI when possible.
         | 
| 117 120 |  | 
| 118 | 
            -
             | 
| 121 | 
            +
            # Copyright
         | 
| 119 122 | 
             
              (C) 2003-2015 Daniel J. Berger
         | 
| 120 | 
            -
             | 
| 123 | 
            +
             | 
| 124 | 
            +
              (C) 2016-2020 Hiroshi Hatake
         | 
| 125 | 
            +
             | 
| 121 126 | 
             
              All Rights Reserved
         | 
| 122 127 |  | 
| 123 | 
            -
             | 
| 128 | 
            +
            # License
         | 
| 124 129 | 
             
              Artistic 2.0
         | 
| 125 130 |  | 
| 126 | 
            -
             | 
| 131 | 
            +
            # Authors
         | 
| 127 132 | 
             
              Daniel J. Berger
         | 
| 128 133 | 
             
              Park Heesob
         | 
| 129 134 | 
             
              Hiroshi Hatake
         | 
    
        data/ext/win32/api.c
    CHANGED
    
    | @@ -37,7 +37,7 @@ | |
| 37 37 |  | 
| 38 38 |  | 
| 39 39 | 
             
            #define MAX_BUF 1024
         | 
| 40 | 
            -
            #define WINDOWS_API_VERSION "1.9. | 
| 40 | 
            +
            #define WINDOWS_API_VERSION "1.9.1"
         | 
| 41 41 |  | 
| 42 42 | 
             
            #define _T_VOID     0
         | 
| 43 43 | 
             
            #define _T_LONG     1
         | 
| @@ -288,8 +288,10 @@ static VALUE api_init(int argc, VALUE* argv, VALUE self) | |
| 288 288 | 
             
               if(NIL_P(v_return))
         | 
| 289 289 | 
             
                  v_return = rb_str_new2("L");
         | 
| 290 290 |  | 
| 291 | 
            +
            #if defined TAINTING_SUPPORT
         | 
| 291 292 | 
             
               SafeStringValue(v_dll);
         | 
| 292 293 | 
             
               SafeStringValue(v_proc);
         | 
| 294 | 
            +
            #endif
         | 
| 293 295 |  | 
| 294 296 | 
             
               hLibrary = LoadLibrary(TEXT(RSTRING_PTR(v_dll)));
         | 
| 295 297 |  | 
| @@ -356,7 +358,9 @@ static VALUE api_init(int argc, VALUE* argv, VALUE self) | |
| 356 358 | 
             
               // Push the numeric prototypes onto our int array for later use.
         | 
| 357 359 |  | 
| 358 360 | 
             
               for(i = 0; i < RARRAY_LEN(v_proto); i++){
         | 
| 361 | 
            +
            #if defined TAINTING_SUPPORT
         | 
| 359 362 | 
             
                  SafeStringValue(RARRAY_PTR(v_proto)[i]);
         | 
| 363 | 
            +
            #endif
         | 
| 360 364 | 
             
                  switch(*(TCHAR*)StringValuePtr(RARRAY_PTR(v_proto)[i])){
         | 
| 361 365 | 
             
                     case 'L':
         | 
| 362 366 | 
             
                        ptr->prototype[i] = _T_LONG;
         | 
| @@ -391,7 +395,9 @@ static VALUE api_init(int argc, VALUE* argv, VALUE self) | |
| 391 395 | 
             
                  ptr->return_type = _T_VOID;
         | 
| 392 396 | 
             
               }
         | 
| 393 397 | 
             
               else{
         | 
| 398 | 
            +
            #if defined TAINTING_SUPPORT
         | 
| 394 399 | 
             
                  SafeStringValue(v_return);
         | 
| 400 | 
            +
            #endif
         | 
| 395 401 | 
             
                  switch(*RSTRING_PTR(v_return)){
         | 
| 396 402 | 
             
                     case 'L':
         | 
| 397 403 | 
             
                        ptr->return_type = _T_LONG;
         | 
| @@ -482,7 +488,9 @@ static VALUE func_init(int argc, VALUE* argv, VALUE self){ | |
| 482 488 | 
             
               // Push the numeric prototypes onto our int array for later use.
         | 
| 483 489 |  | 
| 484 490 | 
             
               for(i = 0; i < RARRAY_LEN(v_proto); i++){
         | 
| 491 | 
            +
            #if defined TAINTING_SUPPORT
         | 
| 485 492 | 
             
                  SafeStringValue(RARRAY_PTR(v_proto)[i]);
         | 
| 493 | 
            +
            #endif
         | 
| 486 494 | 
             
                  switch(*(char*)StringValuePtr(RARRAY_PTR(v_proto)[i])){
         | 
| 487 495 | 
             
                     case 'L':
         | 
| 488 496 | 
             
                        ptr->prototype[i] = _T_LONG;
         | 
| @@ -517,7 +525,9 @@ static VALUE func_init(int argc, VALUE* argv, VALUE self){ | |
| 517 525 | 
             
                  ptr->return_type = _T_VOID;
         | 
| 518 526 | 
             
               }
         | 
| 519 527 | 
             
               else{
         | 
| 528 | 
            +
            #if defined TAINTING_SUPPORT
         | 
| 520 529 | 
             
                  SafeStringValue(v_return);
         | 
| 530 | 
            +
            #endif
         | 
| 521 531 | 
             
                  switch(*RSTRING_PTR(v_return)){
         | 
| 522 532 | 
             
                     case 'L':
         | 
| 523 533 | 
             
                        ptr->return_type = _T_LONG;
         | 
| Binary file | 
| Binary file | 
| Binary file | 
| Binary file | 
| Binary file | 
| Binary file | 
| Binary file | 
| Binary file | 
| Binary file | 
| Binary file | 
| Binary file | 
| Binary file | 
| Binary file | 
| Binary file | 
| Binary file | 
| Binary file | 
| Binary file | 
    
        data/test/test_win32_api.rb
    CHANGED
    
    
    
        data/win32-api.gemspec
    CHANGED
    
    | @@ -2,7 +2,7 @@ require 'rubygems' | |
| 2 2 |  | 
| 3 3 | 
             
            Gem::Specification.new do |spec|
         | 
| 4 4 | 
             
              spec.name       = 'win32-api'
         | 
| 5 | 
            -
              spec.version    = '1.9. | 
| 5 | 
            +
              spec.version    = '1.9.1'
         | 
| 6 6 | 
             
              spec.authors    = ['Daniel J. Berger', 'Park Heesob', 'Hiroshi Hatake']
         | 
| 7 7 | 
             
              spec.license    = 'Artistic-2.0'
         | 
| 8 8 | 
             
              spec.email      = 'djberg96@gmail.com'
         | 
| @@ -13,7 +13,7 @@ Gem::Specification.new do |spec| | |
| 13 13 | 
             
              spec.files      = Dir['**/*'].reject{ |f| f.include?('git') }
         | 
| 14 14 |  | 
| 15 15 | 
             
              spec.required_ruby_version = '>= 1.8.2'
         | 
| 16 | 
            -
              spec.extra_rdoc_files = [' | 
| 16 | 
            +
              spec.extra_rdoc_files = ['CHANGES', 'MANIFEST', 'ext/win32/api.c']
         | 
| 17 17 |  | 
| 18 18 | 
             
              spec.add_development_dependency('test-unit', '>= 2.5.0')
         | 
| 19 19 | 
             
              spec.add_development_dependency('rake')
         | 
    
        metadata
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: win32-api
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 1.9. | 
| 4 | 
            +
              version: 1.9.1
         | 
| 5 5 | 
             
            platform: universal-mingw32
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Daniel J. Berger
         | 
| @@ -10,7 +10,7 @@ authors: | |
| 10 10 | 
             
            autorequire: 
         | 
| 11 11 | 
             
            bindir: bin
         | 
| 12 12 | 
             
            cert_chain: []
         | 
| 13 | 
            -
            date: 2020-07- | 
| 13 | 
            +
            date: 2020-07-14 00:00:00.000000000 Z
         | 
| 14 14 | 
             
            dependencies:
         | 
| 15 15 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 16 16 | 
             
              name: test-unit
         | 
| @@ -49,7 +49,6 @@ email: djberg96@gmail.com | |
| 49 49 | 
             
            executables: []
         | 
| 50 50 | 
             
            extensions: []
         | 
| 51 51 | 
             
            extra_rdoc_files:
         | 
| 52 | 
            -
            - README
         | 
| 53 52 | 
             
            - CHANGES
         | 
| 54 53 | 
             
            - MANIFEST
         | 
| 55 54 | 
             
            - ext/win32/api.c
         | 
| @@ -59,7 +58,7 @@ files: | |
| 59 58 | 
             
            - Dockerfile.trunk
         | 
| 60 59 | 
             
            - Gemfile
         | 
| 61 60 | 
             
            - MANIFEST
         | 
| 62 | 
            -
            - README
         | 
| 61 | 
            +
            - README.md
         | 
| 63 62 | 
             
            - RELEASE.md
         | 
| 64 63 | 
             
            - Rakefile
         | 
| 65 64 | 
             
            - appveyor.yml
         |