Merge branch 'master' into dev
This commit is contained in:
commit
01664777c8
8 changed files with 19 additions and 11 deletions
|
@ -5,6 +5,7 @@
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <libavformat/avformat.h>
|
#include <libavformat/avformat.h>
|
||||||
|
#define SDL_MAIN_HANDLED // avoid link error on Linux Windows Subsystem
|
||||||
#include <SDL2/SDL.h>
|
#include <SDL2/SDL.h>
|
||||||
|
|
||||||
#include "compat.h"
|
#include "compat.h"
|
||||||
|
|
|
@ -49,13 +49,14 @@ static void test_serialize_text_event(void) {
|
||||||
static void test_serialize_long_text_event(void) {
|
static void test_serialize_long_text_event(void) {
|
||||||
struct control_event event;
|
struct control_event event;
|
||||||
event.type = CONTROL_EVENT_TYPE_TEXT;
|
event.type = CONTROL_EVENT_TYPE_TEXT;
|
||||||
char text[TEXT_MAX_LENGTH];
|
char text[TEXT_MAX_LENGTH + 1];
|
||||||
memset(text, 'a', sizeof(text));
|
memset(text, 'a', sizeof(text));
|
||||||
|
text[TEXT_MAX_LENGTH] = '\0';
|
||||||
event.text_event.text = text;
|
event.text_event.text = text;
|
||||||
|
|
||||||
unsigned char buf[SERIALIZED_EVENT_MAX_SIZE];
|
unsigned char buf[SERIALIZED_EVENT_MAX_SIZE];
|
||||||
int size = control_event_serialize(&event, buf);
|
int size = control_event_serialize(&event, buf);
|
||||||
assert(size == 3 + sizeof(text));
|
assert(size == 3 + TEXT_MAX_LENGTH);
|
||||||
|
|
||||||
unsigned char expected[3 + TEXT_MAX_LENGTH];
|
unsigned char expected[3 + TEXT_MAX_LENGTH];
|
||||||
expected[0] = 0x01; // CONTROL_EVENT_TYPE_KEYCODE
|
expected[0] = 0x01; // CONTROL_EVENT_TYPE_KEYCODE
|
||||||
|
|
13
release.sh
13
release.sh
|
@ -1,13 +1,22 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
# build and test locally
|
# test locally
|
||||||
|
TESTDIR=build_test
|
||||||
|
rm -rf "$TESTDIR"
|
||||||
|
# run client tests with ASAN enabled
|
||||||
|
meson "$TESTDIR" -Db_sanitize=address
|
||||||
|
ninja -C"$TESTDIR" test
|
||||||
|
|
||||||
|
# test server
|
||||||
|
GRADLE=${GRADLE:-./gradlew}
|
||||||
|
$GRADLE -p server check
|
||||||
|
|
||||||
BUILDDIR=build_release
|
BUILDDIR=build_release
|
||||||
rm -rf "$BUILDDIR"
|
rm -rf "$BUILDDIR"
|
||||||
meson "$BUILDDIR" --buildtype release --strip -Db_lto=true
|
meson "$BUILDDIR" --buildtype release --strip -Db_lto=true
|
||||||
cd "$BUILDDIR"
|
cd "$BUILDDIR"
|
||||||
ninja
|
ninja
|
||||||
ninja test
|
|
||||||
cd -
|
cd -
|
||||||
|
|
||||||
# build Windows releases
|
# build Windows releases
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
package com.genymobile.scrcpy;
|
package com.genymobile.scrcpy;
|
||||||
|
|
||||||
import com.genymobile.scrcpy.wrappers.InputManager;
|
import com.genymobile.scrcpy.wrappers.InputManager;
|
||||||
import com.genymobile.scrcpy.wrappers.ServiceManager;
|
|
||||||
|
|
||||||
import android.graphics.Point;
|
import android.graphics.Point;
|
||||||
import android.os.SystemClock;
|
import android.os.SystemClock;
|
||||||
|
|
|
@ -8,7 +8,7 @@ import java.io.FileDescriptor;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.nio.ByteBuffer;
|
import java.nio.ByteBuffer;
|
||||||
|
|
||||||
public class IO {
|
public final class IO {
|
||||||
private IO() {
|
private IO() {
|
||||||
// not instantiable
|
// not instantiable
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,7 +3,6 @@ package com.genymobile.scrcpy;
|
||||||
import com.genymobile.scrcpy.wrappers.SurfaceControl;
|
import com.genymobile.scrcpy.wrappers.SurfaceControl;
|
||||||
|
|
||||||
import android.graphics.Rect;
|
import android.graphics.Rect;
|
||||||
import android.media.MediaMuxer;
|
|
||||||
import android.media.MediaCodec;
|
import android.media.MediaCodec;
|
||||||
import android.media.MediaCodecInfo;
|
import android.media.MediaCodecInfo;
|
||||||
import android.media.MediaFormat;
|
import android.media.MediaFormat;
|
||||||
|
|
|
@ -4,7 +4,6 @@ import android.graphics.Rect;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.Arrays;
|
|
||||||
|
|
||||||
public final class Server {
|
public final class Server {
|
||||||
|
|
||||||
|
@ -49,8 +48,9 @@ public final class Server {
|
||||||
|
|
||||||
@SuppressWarnings("checkstyle:MagicNumber")
|
@SuppressWarnings("checkstyle:MagicNumber")
|
||||||
private static Options createOptions(String... args) {
|
private static Options createOptions(String... args) {
|
||||||
if (args.length != 5)
|
if (args.length != 5) {
|
||||||
throw new IllegalArgumentException("Expecting 5 parameters");
|
throw new IllegalArgumentException("Expecting 5 parameters");
|
||||||
|
}
|
||||||
|
|
||||||
Options options = new Options();
|
Options options = new Options();
|
||||||
|
|
||||||
|
@ -73,6 +73,7 @@ public final class Server {
|
||||||
return options;
|
return options;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("checkstyle:MagicNumber")
|
||||||
private static Rect parseCrop(String crop) {
|
private static Rect parseCrop(String crop) {
|
||||||
if ("-".equals(crop)) {
|
if ("-".equals(crop)) {
|
||||||
return null;
|
return null;
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
package com.genymobile.scrcpy.wrappers;
|
package com.genymobile.scrcpy.wrappers;
|
||||||
|
|
||||||
import android.annotation.SuppressLint;
|
|
||||||
import android.os.IInterface;
|
import android.os.IInterface;
|
||||||
import android.view.InputEvent;
|
|
||||||
|
|
||||||
import java.lang.reflect.InvocationTargetException;
|
import java.lang.reflect.InvocationTargetException;
|
||||||
import java.lang.reflect.Method;
|
import java.lang.reflect.Method;
|
||||||
|
|
Loading…
Reference in a new issue