2020use PHPJava \Kernel \Provider \DependencyInjectionProvider ;
2121use PHPJava \Kernel \Structures \_MethodInfo ;
2222use PHPJava \Kernel \Types \_Char ;
23+ use PHPJava \Kernel \Types \_Double ;
24+ use PHPJava \Kernel \Types \_Long ;
2325use PHPJava \Packages \java \lang \NoSuchMethodException ;
2426use PHPJava \Utilities \AttributionResolver ;
2527use PHPJava \Utilities \DebugTool ;
@@ -123,11 +125,10 @@ function () use ($name, $arguments) {
123125 }
124126
125127 $ reader = new BinaryReader ($ handle );
126- $ localStorage = $ arguments ;
127128
128129 if ($ this ->isDynamic ()) {
129130 array_unshift (
130- $ localStorage ,
131+ $ arguments ,
131132 $ this ->javaClassInvoker ->getJavaClass ()
132133 );
133134 }
@@ -145,13 +146,22 @@ function () use ($name, $arguments) {
145146
146147 $ this ->debugTool ->getLogger ()->info ('Start operations: ' . $ methodBeautified );
147148
148- $ localStorage = array_map (
149- function ($ item ) {
150- return TypeResolver::convertPHPTypeToJavaType ($ item );
149+ $ arguments = array_map (
150+ function ($ argument ) {
151+ return TypeResolver::convertPHPTypeToJavaType ($ argument );
151152 },
152- $ localStorage
153+ $ arguments
153154 );
154155
156+ $ localStorage = [];
157+ foreach ($ arguments as $ argument ) {
158+ $ localStorage [] = $ argument ;
159+ if ($ argument instanceof _Double || $ argument instanceof _Long) {
160+ // Double and Long has problem which skipping next storage.
161+ $ localStorage [] = null ;
162+ }
163+ }
164+
155165 $ dependencyInjectionProvider = (new DependencyInjectionProvider ())
156166 ->add (
157167 'ConstantPool ' ,
0 commit comments