tcp client(or https client) will stuck when freeheap is low
- Dominant language
- C++
- Stars
- 16.7k
- Forks
- 13.1k
- PR merge metrics
- No merged PRs in 30d
Description
### Basic Infos
- [x] This issue complies with the [issue POLICY doc](https://github.com/esp8266/Arduino/blob/master/POLICY.md).
- [x] I have read the documentation at [readthedocs](https://arduino-esp8266.readthedocs.io/en/latest) and the issue is not addressed there.
- [x] I have tested that the issue is present in current master branch (aka latest git).
- [x] I have searched the issue tracker for a similar issue.
- [x] If there is a stack dump, I have decoded it.
- [x] I have filled out all fields below.
#### Platform
- Hardware: [ESP-12]
- Core Version: [latest git](https://github.com/esp8266/Arduino/commit/7ee503d3539b107ca6796af77d11ce8a267ff23d)
- Development Env: [Arduino IDE]
- Operating System: [Windows]
### Settings in IDE
- Module: [WiFiduino]
- Flash Mode: [qio]
- Flash Size: [4MB]
- lwip Variant: [|v2 Lower Memory]
- Reset Method: [nodemcu]
- Flash Frequency: [40Mhz]
- CPU Frequency: [80Mhz]
- Upload Using: [SERIAL]
- Upload Speed: [115200]
### Problem Description
I use BearSSL::WiFiClientSecure client to build a MQTT client and a HTTPS client in my project, it will stuck some time when the client connect to server url, but the codes may not Abort called at once.I set a ticker run every 3s to test, when the codes stuck, the ticker may run a long time.
I rewrite the BasicHTTPSClient to descrip this bug, when the freeheap is low the tcp client or http client will stuck. But the WDT or softWDT still run for a minutes or a long time.
### [MCVE](https://stackoverflow.com/help/mcve) Sketch
```cpp
/**
BasicHTTPSClient.ino
Created on: 20.08.2018
*/
#include
#include
#include
#include
#include
// Fingerprint for demo URL, expires on June 2, 2019, needs to be updated well before this date
const uint8_t fingerprint[20] = {0x5A, 0xCF, 0xFE, 0xF0, 0xF1, 0xA6, 0xF4, 0x5F, 0xD2, 0x11, 0x11, 0xC6, 0x1D, 0x2F, 0x0E, 0xBC, 0x39, 0x8D, 0x50, 0xE0};
ESP8266WiFiMulti WiFiMulti;
#include
Ticker flipper;
uint32_t buff_num = 4800;
uint32_t test[4800];
void checkHeap() {
Serial.print("heap: ");
Serial.println(ESP.getFreeHeap());
}
void setup() {
for(uint32_t num = 0; num < buff_num; num++)
{
test[num] = 0xFFFFFFFF;
}
Serial.begin(115200);
// Serial.setDebugOutput(true);
Serial.println();
Serial.println();
Serial.println();
for (uint8_t t = 4; t > 0; t--) {
Serial.printf("[SETUP] WAIT %d...\n", t);
Serial.flush();
delay(1000);
}
WiFi.mode(WIFI_STA);
WiFi.begin();
flipper.attach(3, checkHeap);
//WiFiMulti.addAP("i3phone,19900924");
}
void loop() {
// wait for WiFi connection
if ((WiFi.status() == WL_CONNECTED)) {
std::unique_ptrclient(new BearSSL::WiFiClientSecure);
//client->setFingerprint(fingerprint);
client->setInsecure();
HTTPClient https;
Serial.print("[HTTPS] begin...\n");
checkHeap();
if (https.begin(*client, "https://jigsaw.w3.org/HTTP/connection.html")) { // HTTPS
Serial.print("[HTTPS] GET...\n");
// start connection and send HTTP header
int httpCode = https.GET();
// httpCode will be negative on error
if (httpCode > 0) {
// HTTP header has been send and Server response header has been handled
Serial.printf("[HTTPS] GET... code: %d\n", httpCode);
// file found at server
if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {
String payload = https.getString();
Serial.println(payload);
}
} else {
Serial.printf("[HTTPS] GET... failed, error: %s\n", https.errorToString(httpCode).c_str());
}
https.end();
} else {
Serial.printf("[HTTPS] Unable to connect\n");
}
}
Serial.println("Wait 5s before next round...");
delay(5000);
}
```
### Debug Messages
```
SDK:3.0.0-dev(c0f7b44)/Core:win-2.5.0-dev=-195000/lwIP:STABLE-2_1_2_RELEASE/glue:1.0-11-g87c709d/BearSSL:79edbc8
[SETUP] WAIT 4...
scandone
state: 0 -> 2 (b0)
state: 2 -> 3 (0)
state: 3 -> 5 (10)
add 0
aid 8
cnt
connected with 有没有wifi, channel 1
dhcp client start...
ip:192.168.0.111,mask:255.255.255.0,gw:192.168.0.1
[SETUP] WAIT 3...
[SETUP] WAIT 2...
[SETUP] WAIT 1...
Wait 5s before next round...
scandone
heap: 30240
[HTTPS] begin...
heap: 24216
[HTTPS] GET...
:oom(608)@?
:oom(608)@?
:oom(608)@?
:oom(608)@?
heap: 784
:oom(608)@?
pm open,type:2 0
:oom(608)@?
:oom(76)@?
:oom(84)@?
:oom(608)@?
heap: 264
:oom(96)@?
:oom(96)@?
:oom(608)@?
heap: 264
:oom(96)@?
:oom(96)@?
heap: 264
:oom(96)@?
:oom(164)@?
:oom(96)@?
heap: 264
:oom(96)@?
:oom(96)@?
:oom(96)@?
heap: 264
heap: 264
heap: 264
:oom(96)@?
:oom(96)@?
:oom(96)@?
heap: 264
:oom(96)@?
:oom(96)@?
heap: 264
:oom(96)@?
heap: 264
:oom(164)@?
heap: 264
heap: 264
heap: 264
heap: 264
heap: 264
:oom(96)@?
:oom(96)@?
:oom(96)@?
heap: 264
:oom(164)@?
heap: 264
:oom(96)@?
:oom(96)@?
:oom(96)@?
heap: 264
heap: 264
after hours
Soft WDT reset
>>>stack>>>
ctx: sys
sp: 3fffece0 end: 3fffffb0 offset: 01b0
3fffee90: 00000000 3ffee3f0 3fff4a04 40202eab
3fffeea0: 242137c3 000b335b 3fff4a04 402045e7
3fffeeb0: 00000002 3ffee4c0 00000028 4023cb10
3fffeec0: 3ffea2ea 00000002 3ffee3f0 3ffea2ee
3fffeed0: 40242362 00000100 3ffea2e2 3ffee868
3fffeee0: 3fffdc10 00000000 3fff4a04 402046bf
3fffeef0: 0000003c 3fff4aec 3fff4a04 40203095
3fffef00: 0000001e 3fff4aec 3fff4a04 4020458b
3fffef10: 3ffecc50 3fff4aec 3fff4a04 40203934
3fffef20: 3ffecc50 40100ed7 3fff4aec 40202c44
3fffef30: 40100f12 00000000 00000002 3ffee868
3fffef40: 3fffdc10 00000000 3fff4aec 4024aa1c
3fffef50: 40000f49 3fffdab0 3fffdab0 40000f49
3fffef60: 40000e19 40001878 00000004 00000000
3fffef70: 3fffff10 aa55aa55 00000007 40104a84
3fffef80: 40104a8a 00000004 00000000 fd07c24c
3fffef90: 4010000d 100359d8 c85ab83e f8cfaa18
3fffefa0: 40100d3c 3fffef3c 40100ce9 3ffffd68
3fffefb0: 3fffffc0 00000000 00000000 feefeffe
3fffefc0: feefeffe feefeffe feefeffe feefeffe
3fffefd0: feefeffe feefeffe feefeffe feefeffe
3fffefe0: feefeffe feefeffe feefeffe feefeffe
3fffeff0: feefeffe feefeffe feefeffe feefeffe
3ffff000: feefeffe feefeffe feefeffe feefeffe
3ffff010: feefeffe feefeffe feefeffe feefeffe
3ffff020: feefeffe feefeffe feefeffe feefeffe
3ffff030: feefeffe feefeffe feefeffe feefeffe
3ffff040: feefeffe feefeffe feefeffe feefeffe
3ffff050: feefeffe feefeffe feefeffe feefeffe
3ffff060: feefeffe feefeffe feefeffe feefeffe
3ffff070: feefeffe feefeffe feefeffe feefeffe
3ffff080: feefeffe feefeffe feefeffe feefeffe
3ffff090: feefeffe feefeffe feefeffe feefeffe
3ffff0a0: feefeffe feefeffe feefeffe feefeffe
3ffff0b0: feefeffe feefeffe feefeffe feefeffe
3ffff0c0: feefeffe feefeffe feefeffe feefeffe
3ffff0d0: feefeffe feefeffe feefeffe feefeffe
3ffff0e0: feefeffe feefeffe feefeffe feefeffe
3ffff0f0: feefeffe feefeffe feefeffe feefeffe
3ffff100: feefeffe feefeffe feefeffe feefeffe
3ffff110: feefeffe feefeffe feefeffe feefeffe
3ffff120: feefeffe feefeffe feefeffe feefeffe
3ffff130: feefeffe feefeffe feefeffe feefeffe
3ffff140: feefeffe feefeffe feefeffe feefeffe
3ffff150: feefeffe feefeffe feefeffe feefeffe
3ffff160: feefeffe feefeffe feefeffe feefeffe
3ffff170: feefeffe feefeffe feefeffe feefeffe
3ffff180: feefeffe feefeffe feefeffe feefeffe
3ffff190: feefeffe feefeffe feefeffe feefeffe
3ffff1a0: feefeffe feefeffe feefeffe feefeffe
3ffff1b0: feefeffe feefeffe feefeffe feefeffe
3ffff1c0: feefeffe feefeffe feefeffe feefeffe
3ffff1d0: feefeffe feefeffe feefeffe feefeffe
3ffff1e0: feefeffe feefeffe feefeffe feefeffe
3ffff1f0: feefeffe feefeffe feefeffe feefeffe
3ffff200: feefeffe feefeffe feefeffe feefeffe
3ffff210: feefeffe feefeffe feefeffe feefeffe
3ffff220: feefeffe feefeffe feefeffe feefeffe
3ffff230: feefeffe feefeffe feefeffe feefeffe
3ffff240: feefeffe feefeffe feefeffe feefeffe
3ffff250: feefeffe feefeffe feefeffe feefeffe
3ffff260: feefeffe feefeffe feefeffe feefeffe
3ffff270: feefeffe feefeffe feefeffe feefeffe
3ffff280: feefeffe feefeffe feefeffe feefeffe
3ffff290: feefeffe feefeffe feefeffe feefeffe
3ffff2a0: feefeffe feefeffe feefeffe feefeffe
3ffff2b0: feefeffe feefeffe feefeffe feefeffe
3ffff2c0: feefeffe feefeffe feefeffe feefeffe
3ffff2d0: feefeffe feefeffe feefeffe feefeffe
3ffff2e0: feefeffe feefeffe feefeffe feefeffe
3ffff2f0: feefeffe feefeffe feefeffe feefeffe
3ffff300: feefeffe feefeffe feefeffe feefeffe
3ffff310: feefeffe feefeffe feefeffe feefeffe
3ffff320: feefeffe feefeffe feefeffe feefeffe
3ffff330: feefeffe feefeffe feefeffe feefeffe
3ffff340: feefeffe feefeffe feefeffe feefeffe
3ffff350: feefeffe feefeffe feefeffe feefeffe
3ffff360: feefeffe feefeffe feefeffe feefeffe
3ffff370: feefeffe feefeffe feefeffe feefeffe
3ffff380: feefeffe feefeffe feefeffe feefeffe
3ffff390: feefeffe feefeffe feefeffe feefeffe
3ffff3a0: feefeffe feefeffe feefeffe feefeffe
3ffff3b0: feefeffe feefeffe feefeffe feefeffe
3ffff3c0: feefeffe feefeffe feefeffe feefeffe
3ffff3d0: feefeffe feefeffe feefeffe feefeffe
3ffff3e0: feefeffe feefeffe feefeffe feefeffe
3ffff3f0: feefeffe feefeffe feefeffe feefeffe
3ffff400: feefeffe feefeffe feefeffe feefeffe
3ffff410: feefeffe feefeffe feefeffe feefeffe
3ffff420: feefeffe feefeffe feefeffe feefeffe
3ffff430: feefeffe feefeffe feefeffe feefeffe
3ffff440: feefeffe feefeffe feefeffe feefeffe
3ffff450: feefeffe feefeffe feefeffe feefeffe
3ffff460: feefeffe feefeffe feefeffe feefeffe
3ffff470: feefeffe feefeffe feefeffe feefeffe
3ffff480: feefeffe feefeffe feefeffe feefeffe
3ffff490: feefeffe feefeffe feefeffe feefeffe
3ffff4a0: feefeffe feefeffe feefeffe feefeffe
3ffff4b0: feefeffe feefeffe feefeffe feefeffe
3ffff4c0: feefeffe feefeffe feefeffe feefeffe
3ffff4d0: feefeffe feefeffe feefeffe feefeffe
3ffff4e0: feefeffe feefeffe feefeffe feefeffe
3ffff4f0: feefeffe feefeffe feefeffe feefeffe
3ffff500: feefeffe feefeffe feefeffe feefeffe
3ffff510: feefeffe feefeffe feefeffe feefeffe
3ffff520: feefeffe feefeffe feefeffe feefeffe
3ffff530: feefeffe feefeffe feefeffe feefeffe
3ffff540: feefeffe feefeffe feefeffe feefeffe
3ffff550: feefeffe feefeffe feefeffe feefeffe
3ffff560: feefeffe feefeffe feefeffe feefeffe
3ffff570: 7c53ecfb afe533a1 bff42ea9 d4fb3cde
3ffff580: e5261c91 b20e54a8 1ee3ab92 b5ec48ee
3ffff590: 5c5c5c5c 5c5c5c5c 5c5c5c5c 5c5c5c5c
3ffff5a0: 5c5c5c5c 5c5c5c5c 5c5c5c5c 5c5c5c5c
3ffff5b0: 98ae03f3 011f4524 45f344a3 33d95799
3ffff5c0: de672a42 5ca33063 c58cb21a f0e95e0e
3ffff5d0: d11f1eff cb6e6161 a0ee2d84 db95b204
3ffff5e0: 307eb0c4 3581466e 7fe0602a 2e4bb1ce
3ffff5f0: 3994c3d1 f0001209 7d20aa19 c4b26ae6
3ffff600: 556f4112 565e6526 9115e4f9 4adec201
3ffff610: 528a530e 981e78ce 47d785ab 46bbb30e
3ffff620: 294b369d 4199598d 3930b296 265cf5df
3ffff630: a3066855 3547ff03 fdaeca5a 94f301d5
3ffff640: 80000000 00000000 00000000 00000000
3ffff650: 00000000 00000000 00000000 00000300
3ffff660: 6e1e8081 4b6b5308 516cbec9 0f889506
3ffff670: 6ab2ff58 a6405ec7 97cf450f 38a45a55
3ffff680: 156f1dd7 f7dad119 7cdcc8e3 00000080
3ffff690: 03030000 010000d1 8fcff182 000093f7
3ffff6a0: cf415a05 4f043e8c a838bb3c e9d391fb
3ffff6b0: f7f90000 95a4d190 a8c02bc0 5acca9cc
3ffff6c0: 30c0acc0 2fc02cc0 afc023c0 adc0aec0
3ffff6d0: 28c009c0 27c024c0 14c02dc0 13c00ac0
3ffff6e0: 32c025c0 31c02ec0 2ac004c0 29c026c0
3ffff6f0: 0f009c00 0ec005c0 9dc0a0c0 9dc09cc0
3ffff700: 3d002f00 a1003c00 12c003c0 35c008c0
3ffff710: e6b055ac a62648b2 4cd4a284 82c31659
3ffff720: 09f3a3fd fbb76a0e e37b5170 c4434c41
3ffff730: 324e06ba cb18a21c b3d0cd01 1e82b398
3ffff740: 508b8d89 97d4771e 94c3fbac 153eff5c
3ffff750: 33ef8b45 41a55c6d 83926461 bf004f9f
3ffff760: eb98fc17 c7e2ac39 100df60c b2be55ed
3ffff770: c10638bf e010dca1 0ba56bf6 b0f1f28c
3ffff780: afbd51cd 550eda54 3e77d49b 9e913962
3ffff790: ac20d58c 2d28a9d6 abbc9ff5 58de2b72
3ffff7a0: 7c26ba07 35238da6 3417b427 d79229ef
3ffff7b0: 37a10fdc 88f57862 c792928c 002fd22f
3ffff7c0: d9bad82d 4179751e e957ed4f 7aa79938
3ffff7d0: d90da113 ab90940c 19e71e5b 135d0826
3ffff7e0: c8704292 de065576 40cac99b 034a8500
3ffff7f0: 6c743224 8b038346 e784231e 9d4e486e
3ffff800: 5d073dae 021628e6 941c55ee 5169a47f
3ffff810: 3c7bb867 91190995 b30145fa d568726f
3ffff820: fe67f0c3 03a08fe0 86a027ea 7d22b908
3ffff830: 13e13802 956df77f b48c22d0 7be1392a
3ffff840: 8910e333 13f99c5e c957dcb9 2db1e155
3ffff850: f4111852 d779d081 3960c43d aa0da0e9
3ffff860: 0cfd5e88 1162e531 2d390cb2 4317c632
3ffff870: e16a1383 78695391 ceb461e9 987939c2
3ffff880: d7b830e8 76eac9db 03484658 24b83ed0
3ffff890: 6ad63b4e 7d831744 7bc508a3 573810ed
3ffff8a0: ac6f00d6 45560b30 daa9f8f6 581d680f
3ffff8b0: 68e0ce36 e723ba23 7a7c2f78 ac2ac66f
3ffff8c0: 652adf57 8ba780cf e3083b3f ca03e8b2
3ffff8d0: fcada1ab 1da31111 6a17132d c4373547
3ffff8e0: e950a915 562a9013 8468bb3d 2ac460fa
3ffff8f0: d312a675 ee56b1c6 00cf3ced 39fec959
3ffff900: 82440b61 b0e2f2f5 b51c4b70 db2e7550
3ffff910: e2bfe0e4 cc8f687c 40256860 3a97c5af
3ffff920: 3ffff918 92201c7b a595e7a0 417ae970
3ffff930: 7eb9b0f7 33bb3dec 0f4c1e34 37c0e014
3ffff940: ca9aea21 0ddd15e6 e2bfe3e4 194d1db5
3ffff950: 11842d29 de38b1d8 a716a7a2 ca9aea21
3ffff960: 0f4c1e34 a716a7a2 7eb9b0f7 0ddd15e6
3ffff970: 3ffffab0 92201c7b cc8f687c a595e7a0
3ffff980: de38b1d8 33bb3dec f3bcc908 6a09e667
3ffff990: 84caa73b bb67ae85 fe94f82b 3c6ef372
3ffff9a0: 5f1d36f1 a54ff53a ade682d1 510e527f
3ffff9b0: 2b3e6c1f 9b05688c fb41bd6b 1f83d9ab
3ffff9c0: 137e2179 5be0cd19 748f82ee 3b9b82b7
3ffff9d0: d8ec7048 4d277184 748f82ee 00000000
3ffff9e0: 3fff6f3c 00000080 00000080 4021c560
3ffff9f0: 3ffffa20 3ffffab0 3ffffaa0 4021cdcb
3ffffa00: bb7da562 f30b1b1d d301166f 3ffffa20
3ffffa10: 402565a4 00000006 3fff6ebc 4022953d
3ffffa20: 00000080 d1000001 00000303 f7930000
3ffffa30: 82f1cf8f 8c3e044f 055a41cf fb91d3e9
3ffffa40: 3cbb38a8 90d1a495 0000f9f7 cca9cc5a
3ffffa50: c02bc0a8 c02cc02f c0acc030 c0aec0ad
3ffffa60: c023c0af c024c027 c009c028 c00ac013
3ffffa70: c02dc014 c02ec031 c025c032 c026c029
3ffffa80: c004c02a c005c00e 009c000f c09cc09d
3ffffa90: c0a0c09d 003c00a1 002f003d c008c035
3ffffaa0: c003c012 bb7da562 00000080 00000000
3ffffab0: 2e548eb7 ab84cfd8 678a8b1f ccebdbaf
3ffffac0: 7d4ea922 4a4c0959 2bac9f6d d90b3327
3ffffad0: 40069f4c 88cf3294 448b89d4 65a052ad
3ffffae0: 0a8ddb9f c69a814e b9140919 3a197ef1
3ffffaf0: 00000000 3ffffb41 3fff702c 3fff6fec
3ffffb00: 000000da 402568e0 3fff6864 0000001c
3ffffb10: 10e53b97 e261bb56 4024071f 00000001
3ffffb20: 00000000 00000000 0000001f 4010525d
3ffffb30: 4000050c 3ffecb10 3fff4074 00000001
3ffffb40: 40102224 00000030 0000001f fffffffe
3ffffb50: 00000000 00000000 0000001f 4010525d
3ffffb60: 4000050c 059ad22a 00007fff 0000012b
3ffffb70: 40104662 00000030 0000001f fffffffe
3ffffb80: 4010464e 00000001 00000000 00000001
3ffffb90: 00000000 00004145 00000000 fffffffe
3ffffba0: ffffffff 3fffc6fc 00030000 00080000
3ffffbb0: 000005e0 00000000 40103785 3ffed520
3ffffbc0: 0000003c 00000000 3ffe93a5 000000fd
3ffffbd0: 00000000 00000000 00000020 40101576
3ffffbe0: 00000005 00000000 00000020 40101576
3ffffbf0: 3ffe93a5 4010497b 3ffece08 40101576
3ffffc00: 00000005 00000000 00000020 40101576
3ffffc10: 3ffe93a5 4010497b 3ffece08 40102462
3ffffc20: 40102291 3ffece08 3ffed520 40102462
3ffffc30: 0000001f 24c1f524 3ffed800 40102462
3ffffc40: 3ffe9c2c 00000000 00000000 00000001
3ffffc50: 0000001f 24c1f524 401028a2 00000100
3ffffc60: 7fffffff 3ffe9c2c 3ffe9c2c 00000001
3ffffc70: 00000001 00004288 00040000 00000022
3ffffc80: 00000000 24c1f524 00000000 4000050c
3ffffc90: 3fffc278 4010263c 3fffc200 00000022
3ffffca0: 3ffe9c38 00000030 0000001e ffffffff
3ffffcb0: 40202eae 00000030 00000010 ffffffff
3ffffcc0: 40202eab 00000000 24c1fc08 00000000
3ffffcd0: 00000005 00004145 00000000 fffffffe
3ffffce0: ffffffff 3fffc6fc 00000001 3fff4a04
3ffffcf0: 074ca475 00000008 00000001 00000030
3ffffd00: 074c97e7 00000008 00000001 00000030
3ffffd10: 00000000 00000000 3fff62c4 40215d02
3ffffd20: 00000000 4bc6a7f0 7ced9168 00000000
3ffffd30: 00000000 00000000 4bc6a7f0 00000000
3ffffd40: 3fff39bc 00000153 00000153 4010054c
3ffffd50: 000000da 00000000 3fff4974 40100ca0
3ffffd60: 002a7428 00000000 3ffe850c 074ca482
3ffffd70: 00000008 00000001 40207c8c 3fffefa0
3ffffd80: 00000008 00000001 00000064 40207d6a
3ffffd90: 00000020 402568e0 00000064 40207dad
3ffffda0: 00000000 00000000 3fff4a04 40202eab
3ffffdb0: 00000008 074ca482 3fff4a04 40204642
3ffffdc0: 000000da 00000005 0bbef1cd 00000000
3ffffdd0: 4021ec08 4021ebb0 3fff63ac 4021e6be
3ffffde0: 3fff68ac 3fff489c 3fff63ac 00000000
3ffffdf0: 00000001 00000001 3fff4a04 40204874
3ffffe00: 00000001 3fff489c 3fff4a04 40204a57
3ffffe10: 00000000 3ffffe70 40207c8c 3fffefa0
3ffffe20: 00000000 00000000 00000000 4020157b
3ffffe30: 00000d50 3fff47a4 3fff4a04 402038c1
3ffffe40: 000001bb 00000010 3ffffe94 00000000
3ffffe50: 000001bb 3fff4a04 3fff489c 00000000
3ffffe60: 000001bb 3fff4a04 3fff489c 40204b1e
3ffffe70: 40208870 15341e80 3fffff10 402083c0
3ffffe80: 00000001 3fff4a04 3fffff10 40205c6c
3ffffe90: 3fffff88 00000001 3fff4ac4 40100ca0
3ffffea0: 3fff4acc 00000000 3fffff10 40206454
3ffffeb0: 3ffe8599 00000030 3fffff10 3fff393c
3ffffec0: 00000001 3fff4a04 3fff3820 40206a10
3ffffed0: 3ffe88cc 3fff4a04 3fff479c 40206ced
3ffffee0: 3ffe85c4 00000000 3fffff88 3fff393c
3ffffef0: 00000001 3fff4a04 3fff3820 40206502
3fffff00: 3fffdad0 3fff4a04 3fff3820 40202971
3fffff10: 00000000 00000000 3fff4a04 3fff489c
3fffff20: 0000000f 0000000d 400001bb 3f001388
3fffff30: 3fff6294 0000001f 00000015 3fff499c
3fffff40: 0000000f 00000005 3fff4814 0000000f
3fffff50: 00000000 3fff4834 0000001f 00000011
3fffff60: 3fff4784 0000000f 00000000 00000000
3fffff70: 00000000 00000000 ffffffff 00000000
3fffff80: 00000000 00000000 00000000 00000000
3fffff90: 00000000 00000000 00000001 40207cad
3fffffa0: 3fffdad0 00000000 3fff390c 40207d38
<<
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.