/** * \brief Get name of native capture device. * \param env JNI environment * \param obj DSCaptureDevice object * \param ptr native pointer of DSCaptureDevice * \return name of the native capture device */ JNIEXPORT jstring JNICALL Java_net_java_sip_communicator_impl_neomedia_directshow_DSCaptureDevice_getName (JNIEnv* env, jobject obj, jlong ptr) { DSCaptureDevice* dev = reinterpret_cast<DSCaptureDevice*>(ptr); jstring ret = NULL; jsize len = static_cast<jsize>(wcslen(dev->getName())); jchar* name = new jchar[len]; /* jchar is two bytes! */ memcpy((void*)name, (void*)dev->getName(), len * 2); ret = env->NewString(name, len); delete[] name; return ret; }