Skip to content

Various works on SWIG Java#4273

Merged
nanangizz merged 5 commits intomasterfrom
swigjava-updates
Jan 29, 2025
Merged

Various works on SWIG Java#4273
nanangizz merged 5 commits intomasterfrom
swigjava-updates

Conversation

@nanangizz
Copy link
Copy Markdown
Member

@nanangizz nanangizz commented Jan 28, 2025

  1. Fix type mapping (SWIGTYPE_*):

    1. Map C void* & void** to Java long (was SWIGTYPE_p_void & SWIGTYPE_p_p_void, which was not really usable), this should fix issues like SendInstantMessageParam.setUserData() requires SWIGTYPE_p_void, which has protected access #4242.
    2. Map pjmedia_aud_dev_index to int.
    3. Map unsigned char[20] for SslCertInfo.serialNo to Java short array
      This also updates pjsua.i, e.g: tab->space, reorder things.
  2. Update swig_java_pjsua2.vcxproj:

    1. Rename config "Debug" & "Release" to "Debug-Dynamic" & "Release-Dynamic" as the project actually builds dynamic libs. Also fix the property sheet dependencies from *-static to *-dynamic.
    2. Update other settings, e.g: built tool version from 140 to 143.
  3. Update symbols.lst: added missing new types, tab->space, reorder alphabetically.

1. Fix type mapping (SWIGTYPE_*):
   a. Map C "void*" & "void**" to Java long (was SWIGTYPE_p_void & SWIGTYPE_p_p_void which are not really usable), this should fix #4242.
   b. Map pjmedia_aud_dev_index to int.
   c. Map unsigned char[20] for SslCertInfo.serialNo to Java "short array"

   This also updates pjsua.i, e.g: tab->space, reorder things.

2. Update swig_java_pjsua2.vcxproj:
   a. Rename config "Debug" & "Release" to "Debug-Dynamic" & "Release-Dynamic" in , as the project actually builds dynamic libs. Also fix the property sheet dependencies from *-static to *-dynamic.
   b. Update other settings, e.g: built tool version from 140 to 143.

3. Update symbols.lst: added missing new types, tab->space, reorder alphabetically.
@sauwming
Copy link
Copy Markdown
Member

So by mapping to long, will you be able to pass Java object as user data? (e.g. SendInstantMessageParam.setUserData(Object) )

Also check if utilTimerSchedule() and utilTimerCancel() works with this patch.

@nanangizz
Copy link
Copy Markdown
Member Author

So by mapping to long, will you be able to pass Java object as user data? (e.g. SendInstantMessageParam.setUserData(Object) )

No, it is a long not Object.
I decided to map it to long as perhaps it is safer (for us now :), as if it is an Object, I guess we need to maintain the lifetime of the object, e.g: add ref, etc.
The issue reporter seems to use SWIGTYPE_p_void which basically wraps C pointer as long, so perhaps it is account ID or call ID that is used as user data instead of the account/call object.

@nanangizz nanangizz merged commit 960597e into master Jan 29, 2025
@nanangizz nanangizz deleted the swigjava-updates branch January 29, 2025 06:36
trengginas added a commit that referenced this pull request Feb 13, 2025
commit 1e2f121
Author: sauwming <ming@teluu.com>
Date:   Thu Feb 13 10:30:58 2025 +0800

    Fixed CI Mac failure (#4304)

commit 10b4d30
Author: sauwming <ming@teluu.com>
Date:   Thu Feb 13 09:06:54 2025 +0800

    Audio and video stream refactoring (#4300)

commit 6cbf0e6
Author: Riza Sulistyo <trengginas@users.noreply.github.com>
Date:   Wed Feb 12 15:23:37 2025 +0700

    Check if ice strans is valid before using it to send (#4301)

commit fdd4041
Author: Maciej Lisowski <39798354+MaciejDromin@users.noreply.github.com>
Date:   Tue Feb 11 12:48:17 2025 +0100

    Add missing OnTimerParam import in Android Example (#4299)

commit 4ded10f
Author: sauwming <ming@teluu.com>
Date:   Fri Feb 7 13:27:00 2025 +0800

    Fixed msg_data assertion in pjsua_acc_send_request() API (#4298)

commit 65c4bc9
Author: sauwming <ming@teluu.com>
Date:   Fri Feb 7 07:18:22 2025 +0800

    Fix pjsua sample app user agent (#4296)

commit c53ace9
Author: sauwming <ming@teluu.com>
Date:   Fri Feb 7 07:18:09 2025 +0800

    Fixed Java make clean error (#4297)

commit e6196ad
Author: LeonidGoltsblat <138720759+LeonidGoltsblat@users.noreply.github.com>
Date:   Fri Feb 7 02:15:10 2025 +0300

    Aligned memory allocation (#4277)

    * aligned memory allocaion

    * Fix alt API implementations (PJ_HAS_POOL_ALT_API)

    * pool test: add testing for bug in pj_pool_allocate_find with big alignment, and refactor to use unit test API

    * misc fixes on code review

    * pool_dbg alignment support + incompatible tests disabled for PJ_HAS_POOL_ALT_API

    ---------

    Co-authored-by: bennylp <bennylp@pjsip.org>

commit 2fff775
Author: sauwming <ming@teluu.com>
Date:   Thu Feb 6 13:11:01 2025 +0800

    Add API to register custom SDP comparison callback (#4286)

commit 99b4d1e
Author: sauwming <ming@teluu.com>
Date:   Thu Feb 6 13:10:38 2025 +0800

    Fixed issue with SDP version when reoffer is rejected (#4289)

commit 0252152
Author: Benny Prijono <bennylp@pjsip.org>
Date:   Thu Feb 6 11:09:20 2025 +0700

    Use cirunner to capture and analyze GitHub action CI crash (#4288)

    * Windows runner implementation

    * Set timeout

    * Remove initial implementation of ci-runner here (it is on separate repo now)

    * Remove crash handling (-n) in main.c of unit tests

    * Install cirunner to CI workflows

    * Adding crash to timestamp test

    * Fix missing cirunner in one of the job

    * Reinstall core_pattern on Linux

    * Removed intentional crash in timestamp_test()

    * Upload program and core dump on crash

    * Add crash code in uri_test.c

    * Removed injected crash in uri_test. Disable stdout/stderr buffering for unit tests

    * Minor: remove space left out by previous clean up

commit 3fcce51
Author: sauwming <ming@teluu.com>
Date:   Wed Feb 5 11:43:27 2025 +0800

    Fixed OpenSSL log error reading cert (#4291)

commit cbfbbc4
Author: jimying <yingqw.js@gmail.com>
Date:   Wed Feb 5 11:03:53 2025 +0800

    iocp: fix crash, GetQueuedCompletionStatus() write freed WSAOVERLAPPED memory (#4136)

commit 205baf0
Author: sauwming <ming@teluu.com>
Date:   Tue Feb 4 17:04:25 2025 +0800

    Fixed warnings in sip auth client (#4287)

commit abffe0d
Author: sauwming <ming@teluu.com>
Date:   Tue Feb 4 08:38:55 2025 +0800

    Fixed CI test failure (#4284)

commit 986fc78
Author: Johannes <johannes.westhuis@gmail.com>
Date:   Mon Feb 3 08:31:28 2025 +0100

    Share an auth session between multiple dialogs/regc (#4262)

commit 46111c4
Author: Nanang Izzuddin <nanang@teluu.com>
Date:   Mon Feb 3 11:36:54 2025 +0700

    Best effort avoid crash when media transport adapter not using group lock (#4281)

commit f986ad8
Author: Benny Prijono <bennylp@pjsip.org>
Date:   Fri Jan 31 09:45:19 2025 +0700

    Add link to coding style documentation (#4280)

commit 727ee32
Author: Nanang Izzuddin <nanang@teluu.com>
Date:   Fri Jan 31 09:08:02 2025 +0700

    Fix build error when PJ_LOG_MAX_LEVEL is zero (#4279)

    The `pj_log_get_log_func()` is not defined when PJ_LOG_MAX_LEVEL is set to zero.

    Thanks to Giorgio Alfarano for the report.

commit dae52f6
Author: Perry Ismangil <perry@teluu.com>
Date:   Thu Jan 30 08:43:54 2025 +0000

    Fixing typo (#4274)

    Acoustic

commit 1a4cd67
Author: sauwming <ming@teluu.com>
Date:   Thu Jan 30 15:21:49 2025 +0800

    Modify iOS sample apps dev team ID (#4278)

commit dfcfa13
Author: Tarteszeus <37761609+Tarteszeus@users.noreply.github.com>
Date:   Thu Jan 30 02:42:36 2025 +0100

    Add queried names to server address record, and add the address record in parameter for on_verify_cb callback (#4256)

commit f9e56d8
Author: Jan Tojnar <jtojnar@gmail.com>
Date:   Wed Jan 29 07:42:18 2025 +0100

    Fix duplicate function name in 100rel docs (#4275)

commit 960597e
Author: Nanang Izzuddin <nanang@teluu.com>
Date:   Wed Jan 29 13:36:34 2025 +0700

    Various works on SWIG Java (#4273)

    * Various works on SWIG Java

    1. Fix type mapping (SWIGTYPE_*):
       a. Map C "void*" & "void**" to Java long (was SWIGTYPE_p_void & SWIGTYPE_p_p_void which are not really usable), this should fix #4242.
       b. Map pjmedia_aud_dev_index to int.
       c. Map unsigned char[20] for SslCertInfo.serialNo to Java "short array"

       This also updates pjsua.i, e.g: tab->space, reorder things.

    2. Update swig_java_pjsua2.vcxproj:
       a. Rename config "Debug" & "Release" to "Debug-Dynamic" & "Release-Dynamic" in , as the project actually builds dynamic libs. Also fix the property sheet dependencies from *-static to *-dynamic.
       b. Update other settings, e.g: built tool version from 140 to 143.

    3. Update symbols.lst: added missing new types, tab->space, reorder alphabetically.

    * Update ci-win.yml
    * Add sample code for passing user data using utilTimerSchedule()
    * Add sample for cancelling timer

commit c36ed2c
Author: Benny Prijono <bennylp@pjsip.org>
Date:   Tue Jan 28 16:58:55 2025 +0700

    Minor modifications to Android build and samples to match new documentation (#4271)

    * To streamline the command, also clean swig and pjsua jni output directories when make distclean and realclean is called

    * Kotlin sample: add account, modify video size and bandwidth, and audio codec priorities to use AMR-WB

    * Android CLI app: fix armeabi hardcoded arch and also copy stdc++.so

commit bab33d6
Author: Noel Morgan <noel@vwci.com>
Date:   Tue Jan 28 01:51:50 2025 -0600

    Added support for updated RFC7866 content-type sub type with XML extension (#4270)

commit a89917e
Author: sauwming <ming@teluu.com>
Date:   Fri Jan 24 14:49:59 2025 +0800

    OpenSSL: Set ciphersuites only if not using BoringSSL (#4269)

commit 377a80c
Author: Nanang Izzuddin <nanang@teluu.com>
Date:   Fri Jan 24 13:48:31 2025 +0700

    Fix various compile errors & warnings in MSVC2005 (#4268)

commit de3f2e1
Author: sauwming <ming@teluu.com>
Date:   Fri Jan 24 10:20:28 2025 +0800

    Set CI vars in GH workflow file (#4263)

commit cdb1294
Author: sauwming <ming@teluu.com>
Date:   Thu Jan 23 11:01:27 2025 +0800

    Various fixes for Apple SSL backend (#4257)
nanangizz added a commit that referenced this pull request Jul 24, 2025
- Fix compile error due to removal of VideoPreviewOpParam.window.handle.setWindow() in #4273.
- Fix truncated captured video by matching video renderer's format size to the video renderer size.
- Minor updates such as: use default video capture device (was colorbar/2), optional logging to file, add incoming call handling, indentations.
- Update gitignore for intermediate files of this project.
nanangizz added a commit that referenced this pull request Jul 25, 2025
- Fix compile error due to removal of VideoPreviewOpParam.window.handle.setWindow() in #4273.
- Fix truncated captured video by matching video renderer's format size to the video renderer size.
- Minor updates such as: use default video capture device (was colorbar/2), optional logging to file, add incoming call handling, indentations.
- Update gitignore for intermediate files of this project.
BarryYin pushed a commit to BarryYin/pjproject that referenced this pull request Feb 3, 2026
* Various works on SWIG Java

1. Fix type mapping (SWIGTYPE_*):
   a. Map C "void*" & "void**" to Java long (was SWIGTYPE_p_void & SWIGTYPE_p_p_void which are not really usable), this should fix pjsip#4242.
   b. Map pjmedia_aud_dev_index to int.
   c. Map unsigned char[20] for SslCertInfo.serialNo to Java "short array"

   This also updates pjsua.i, e.g: tab->space, reorder things.

2. Update swig_java_pjsua2.vcxproj:
   a. Rename config "Debug" & "Release" to "Debug-Dynamic" & "Release-Dynamic" in , as the project actually builds dynamic libs. Also fix the property sheet dependencies from *-static to *-dynamic.
   b. Update other settings, e.g: built tool version from 140 to 143.

3. Update symbols.lst: added missing new types, tab->space, reorder alphabetically.

* Update ci-win.yml
* Add sample code for passing user data using utilTimerSchedule()
* Add sample for cancelling timer
BarryYin pushed a commit to BarryYin/pjproject that referenced this pull request Feb 3, 2026
)

- Fix compile error due to removal of VideoPreviewOpParam.window.handle.setWindow() in pjsip#4273.
- Fix truncated captured video by matching video renderer's format size to the video renderer size.
- Minor updates such as: use default video capture device (was colorbar/2), optional logging to file, add incoming call handling, indentations.
- Update gitignore for intermediate files of this project.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants